我需要找到訂單完全相同的客戶。 (使用T-SQL)查找具有相同訂單的客戶
訂單
OrderID Customerer
1 2
2 5
3 6
4 2
5 4
6 6
7 8
訂單行
OrderLineID OrderID OrderDate OrderType Quantity Reference
1 1 01/01/2011 1 1 Coca Cola
2 1 01/01/2011 1 3 Tea
3 2 02/02/2011 2 1 Coffee
4 2 02/02/2011 2 2 Solo
5 2 03/02/2011 1 1 Soda
6 3 03/02/2011 1 3 Tea
7 3 03/02/2011 1 1 Coca Cola
8 4 05/06/2011 1 1 Beer
9 5 06/06/2011 2 1 Tea
10 5 06/06/2011 2 1 Coca Cola
11 6 07/07/2011 1 1 Coffee
12 6 07/07/2011 1 2 Solo
13 6 07/07/2011 1 1 Soda
14 6 07/07/2011 1 1 Beer
15 7 08/08/2011 1 1 Beer
在這裏與訂單ID 1和3的訂單被認爲是相同的,因爲對orderlines的數量,「數量「和」參考「在兩個訂單上都相同。這意味着客戶2和6已經下了相同的訂單。
訂單5與訂單1和3不同,因爲數量不同。
訂單2與訂單6不同,因爲訂單行不同。
4和7的順序也是相同的。
我正在尋找這樣的ressult:
IdenticalOrders
OrderID CustomeerID
1 2
3 6
4 2
7 8
這似乎是一件容易的事,但我只是不明白從哪裏開始。 (我還是t-sql的新手:-))
您草擬它的結果會爲您提供與其他任何訂單相同的任何訂單,但您不會知道哪個是匹配訂單 – devio
這是關係部門的一個變體。 –
我同意devio。由此產生的信息根本沒有用處,特別是如果有超過2個匹配的訂單。我想出了馬丁史密斯的第二種選擇(我認爲它很棒)的一個變種。我會盡快發佈。 – deutschZuid