[英]Joining temp tables with different structure
我有 2 個臨時表。 一個有數據列。
OrderCode OrderType
ABC 1000
一個有數據行明智
FieldName Value
ORDER_CODE ABC
ORDER_TYPE 2000
我需要編寫一個查詢,該查詢基本上將它們連接起來並更新值(如果它存在於表 2 中)。
記錄集結果需要
OrderCode OrderType
ABC 2000
編輯-
如果表 1 中有 2 個訂單具有相同的訂單代碼:
OrderCode OrderType
ABC 1000
ABC 5000
結果集需要是
OrderCode OrderType
ABC 2000
ABC 2000
到 select 行集:
SELECT tt1.ordercode, tt2_type.Value
FROM Table2 AS tt2_code
JOIN Table1 tt1
ON tt1.orderCode = tt2_code.value
JOIN
Table2 AS tt2_type
ON tt2_type.fieldName = 'ORDER_TYPE'
WHERE tt2_code.fieldName = 'ORDER_CODE'
要根據Table2
中的值更新Table1
:
WITH q AS
(
SELECT tt1.ordercode, tt2_type.Value
FROM Table2 AS tt2_code
JOIN Table1 tt1
ON tt1.orderCode = tt2_code.value
JOIN
Table2 AS tt2_type
ON tt2_type.fieldName = 'ORDER_TYPE'
WHERE tt2_code.fieldName = 'ORDER_CODE'
)
UPDATE q
SET oldvalue = newvalue
這是JOIN
-less 語法更清晰的情況之一。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.