簡體   English   中英

連接具有不同結構的臨時表

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM