我正在研究 SQL,但我不確定過濾資料的方法。
例如,我有兩個表:
Reference_OrderTable:
- 訂單編號
- 物品
- 價錢
OrderTable:
- 訂單編號
- 物品
- 價錢
Reference_Ordertable: 這個表有所有型別的訂單。OrderTable:這是實際的訂單表,我們按客戶的訂單存盤。
我正在尋找失蹤orderID的OrderTable.
例如:
Reference_Ordertable:
訂單編號:1、2、3、4、5、6、7、8
訂單表:
訂單編號:1、3、4、5、7
我想找到缺少的部分,例如OrderID:2、6、8,因為OrderTable如果我們與Reference_Ordertable.
我正在考慮使用 Right Join 方法。但是,Right Join 包含公共資料,它不會搜索丟失的部分。我們如何過濾另一個表中的缺失資料?
謝謝!
uj5u.com熱心網友回復:
You can try below.
Using EXCEPT
select OrderID from reference_OrderTable
EXCEPT
select OrderID from OrderTable
using join
select r.OrderID from reference_OrderTable r
LEFT JOIN OrderTable o ON o.OrderID = r.OrderID
WHERE o.OrderID IS NULL
using sub queries
select OrderID from reference_OrderTable
where OrderID NOT IN (select OrderID from OrderTable)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/446309.html
