这是我的table1
id | userid | country
1 | 25 |
2 | 36 |
3 | 24 |
4 | 24 |
5 | 25 |
6 | 24 |
表2
id | country
25 | Algeria
36 | Canada
24 | Sweden
15 | China
WHERE table2.id = table1.userid
所以我的结果将是
id | userid | country
1 | 25 | Algeria
2 | 36 | Canada
3 | 24 | Sweden
4 | 24 | Sweden
5 | 25 | Algeria
6 | 24 | Sweden
我试过这个
INSERT INTO `table1`(`country`)
SELECT m.country from table2 m , table1 v WHERE m.id = v.userid
但它什么都没插入。我想知道错误在哪里? 。
EDIT。
country field is Empty它只是fidle显示空值
答案 0 :(得分:2)
您应该执行UPDATE
而不是INSERT
,因为行已经存在且您想要修改某个字段。
UPDATE table1 a
INNER JOIN table2 b
ON a.userid = b.id
SET a.country = b.country