我有兩個表:合併結果FULL OUTER組連接
|ORDER_ID|ORDER_DATE|AMOUNT|
|00000001| 12-SEP-16| 900|
|00000002| 13-SEP-16| 1400|
|00000003| 14-SEP-16| 1000|
|00000004| 15-SEP-16| 700|
|ORDER_ID|PURCHASE_ID|PURCHASE_DATE|AMOUNT|
|00000002| 00000001| 20-SEP-16| 1450|
|00000004| 00000002| 21-SEP-16| 750|
我想要的結果是這樣的:
|ORDER_ID|DATE |AMOUNT_ORDER|AMOUNT_PURCHASE|
|00000001|12-SEP-16| 900| |
|00000002|20-SEP-16| 1400| 1450|
|00000003|14-SEP-16| 1000| |
|00000004|21-SEP-16| 700| 750|
到目前爲止,我做這個查詢:
SELECT
a.ORDER_ID,
CASE WHEN b.ORDER_ID IS NULL
THEN a.ORDER_DATE
ELSE b.PURCHASE_DATE
END AS DATE,
a.AMOUNT AS AMOUNT_ORDER
b.AMOUNT AS AMOUNT_PURCHASE
FROM TABLE_A a
FULL OUTER JOIN TABLE_B b
ON a.ORDER_ID = b.ORDER_ID
有沒有另一種有效的方法來查詢這個?
什麼是錯的代碼,你貼? – Blorgbeard
你不需要使用Full Outer Join,你可以使用從表b到表a的簡單連接,因爲表b中的訂單ID不允許空值(這是我的假設) –