2015-07-19 297 views
1

我有,其中每個項目具有以下字段quote_item表:姓名,PRODUCT_ID,r_code1,r_code2嵌套查詢SQL

產品表還具有r_code1和r_code2

這些數據是因爲用戶兩個位置希望引用是一個快照,如果他們稍後在產品級別更改r_code1,它不應該自動影響引號。

但是我現在被要求反映r_code對現有引號的更改,因爲有錯誤。

如果我有20個quote_items報價,我將如何編寫一個查詢,更新每個quote_item.rcode_1到相應product.rcode_1。鏈接是通過quote_item.product_id = product.id。

在此先感謝 尼克

+0

您正在使用哪些DBMS? Postgres的?甲骨文? –

+0

postgres,對不起,離開了。 – nktokyo

回答

1

以下是會在任何數據庫工作標準的SQL:

update qi 
    set rcode_1 = (select p.rcode_1 from product p where p.id = qi.product_id); 

還有其他的方式來表達這一點,取決於數據庫,但以上應該在任何數據庫中工作。

2
update qi set qi.rcode_1 = product.rcode_1 
from quote_items qi 
    inner join product 
     on product.id = qi.product_id 
+0

謝謝。我希望我可以選擇2個正確的答案。 – nktokyo