2014-06-06 73 views
1

我的數據庫中有兩個表。使用JOIN更新sql查詢

 
xcart_product_mmy_items xcart_products 

xcart_products我有兩個柱

 
productid productsku 

一些樣本數據: -

 
productid productsku 
123  AAA 
456  BBB 
789  CCC 
012  DDD 

,並在我的xcart_product_mmy_items我有三個列

 
id productid skuid 

一些樣本數據: -

 
id productid skuid 
1 012 
2 789 
3 456 
4 123 

我想更新skuid的xcart_product_mmy_items根據xcart_products.productsku

所以xcart_product_mmy_items表的結果將是

 
id productid skuid 
1 012  DDD 
2 789  CCC 
3 456  BBB 
4 123  AAA 

我試過了SQL查詢

UPDATE MAIN 
SET MAIN.skuid = SUB.productsku 
FROM xcart_product_mmy_items MAIN 
INNER JOIN xcart_products SUB ON MAIN.productid = SUB.productid 

但我不知道我在哪裏錯了.. 請幫助我..

+1

爲什麼你非規範化模型這樣的嗎?如果你需要'skuid',爲什麼不加入'xcart_products'? –

回答

3

的語法應爲:

UPDATE xcart_product_mmy_items MAIN 
    INNER JOIN xcart_products SUB ON MAIN.productid = SUB.productid 
SET MAIN.skuid = SUB.productsku