應該相當簡單。SQL更新記錄與另一個表中的記錄進行比較
我有2個表格。其中一個有table1(ID,name,other_id),另一個表有table2(id,name,group,..)
我希望table1.other_id與table2.id基於兩個表上的名稱字段。
應該相當簡單。SQL更新記錄與另一個表中的記錄進行比較
我有2個表格。其中一個有table1(ID,name,other_id),另一個表有table2(id,name,group,..)
我希望table1.other_id與table2.id基於兩個表上的名稱字段。
UPDATE t1
SET t1.other_id = t2.id
FROM Table1 t1
JOIN Table2 t2 ON t1.name = t2.name
當然這是假設你沒有使用相同的「名」的多個記錄的,否則你將如何告訴你,你的ID從表2,其記錄與給定的名稱。
+1,我在想什麼...... – 2010-02-24 18:51:32
這應做到:
update table1 t1
set other_id = (
select id
from table2 t2
where t2.name = t1.name)
如果table2
有多個同名記錄這將失敗。
歡迎來到SO!你使用什麼風格的SQL? SQL Server? MySQL的? – AdaTheDev 2010-02-24 18:51:04