2015-08-18 97 views
-1

我有一個表「oldTable」城市裏麪包含字段ID,城市和郵政編碼。更新與選擇

這張表是我爲用戶定義他的城市的一個實際用途,但我想升級這張桌子,所以我下載了一張新的桌子,裏面的所有城市。

這個新表'newTable'包含字段id,old_id,city和postal_code。

我要的是把在外地「old_id」從誰對應於城市的「oldTable」 newtable的「的ID,所以我做這個SQL:

UPDATE newTable 
SET old_id = oldTable.id 
FROM oldTable 
WHERE oldTable.city= newTable.city 
AND oldTable.postal_code = newTable.postal_code 

但我有此錯誤: 您在您的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用附近的正確語法手冊「FROM oldTable WHERE ...」

回答

3

在MySQL的正確語法爲updatejoin是:

UPDATE newTable JOIN 
     oldTable 
     ON oldTable.city = newTable.city AND 
      oldTable.postal_code = newTable.postal_code 
    SET newTable.old_id = oldTable.id; 
+0

謝謝你的工作我已經嘗試加入但我不把SET放在好的地方。 – Kvasir