结构表1:
tb1_id tb1_name
1 a
2 b
3 c
table2的结构:
id name tb1_id
1 a ?
2 b ?
3 c ?
4 a ?
5 a ?
6 b ?
现在让我们猜测我在 table2 中有超过10000条记录,而在 table1 中有1000条记录,我不知道 tb1_id 我想更新table2并在table1上设置tb1_id。
例如它应该看起来像(table2):
id name tb1_id
1 a 1
2 b 2
3 c 3
4 a 1
5 a 1
6 b 2
问候
答案 0 :(得分:1)
使用Update from Join
语法。试试这个。
UPDATE table2 AS a
JOIN table1 AS b
ON a.name = b.tb1_name
SET a.tb1_id = b.tb1_id
答案 1 :(得分:1)
对于MySQL,
update table2 a
inner join table1 b on
a.id=b.tb1_id
set a.tb1_id=b.tb1_id
对于SQL Server,
update a
set a.tb1_id=b.tb1_id
from table2 a
inner join table1 b on
a.id=b.tb1_id