我有两个表,即表国家和公司。我想将table_ country中的country_id复制到table company的column_id列。
这是我当前的mysql查询:
INSERT INTO company(country_id)SELECT a.country_id FROM country a,company b WHERE a.country_name = b.country_name
但它不起作用。结果是它创建了新行而不是填写公司行
答案 0 :(得分:1)
这听起来像是要进行更新,而不是插入。
UPDATE company AS cmp
LEFT JOIN country AS cnt
ON cmp.country_name=cnt.country_name
SET cmp.country_id=cnt.country_id;
答案 1 :(得分:1)
听起来你想在这里实际进行更新:
UPDATE company a
INNER JOIN country b
ON a.country_name = b.country_name
SET country_id = b.country_id;