我已經搜索了網絡,但我確定我不能正確地措詞我的關鍵字,因爲我沒有找到我的問題的可能解決方案。認爲這可能是遞歸,但我不太確定。SQL Server 2012 - 一點指導
我有有以下幾類表:
ID, Author, Customer, Group
的樣本數據集將是這樣的:
ID | Author | Customer | Group
------------------------------------------
1 | Paula Hawkins | John Doe | NULL
2 | Harlan Coben | John Doe | NULL
3 | James Patterson| John Doe | NULL
4 | Paula Hawkins | Jane Doe | NULL
5 | James Patterson| Jane Doe | NULL
6 | James Patterson| Steven Doe| NULL
7 | Harlan Coben | Steven Doe| NULL
8 | Paula Hawkins | Harry Doe | NULL
9 | James Patterson| Harry Doe | NULL
其可能的客戶可能有一個或一個以上的作者簽出這樣我想要做的就是根據總檢出量(不管客戶名稱)將它們分組爲唯一的ID:
ID | Author | Customer | Group
--------------------------------------------
1 | Paula Hawkins | John Doe | 1
2 | Harlan Coben | John Doe | 1
3 | James Patterson| John Doe | 1
4 | Paula Hawkins | Jane Doe | 2
5 | James Patterson| Jane Doe | 2
6 | James Patterson| Steven Doe | 3
7 | Harlan Coben | Steven Doe | 3
8 | Paula Hawkins | Harry Doe | 2
9 | James Patterson| Harry Doe | 2
它很有可能同一個客戶可能被發現數百次用於多本書,所以最終的組別類別將代表該客戶的獨特價值(其他客戶只有在他們簽出的所有內容也匹配其他所有內容時才具有相同的價值客戶已經簽出)。
使用上述數據,哈利和珍擁有完全相同的作者簽出,因此他們在同一組中,但約翰和史蒂文有不同的組合,因此他們有自己的獨特組。
希望這是有道理的。這就是所謂的遞歸?如果是這樣,那麼我會看看一個cte解決方案,它使用某種排名的唯一id值。感謝您給予的任何幫助。
根據您的樣本數據,您可以根據數據添加您想要查看的結果嗎?至少對我而言,你實際上想看到的東西還是有點不清楚。 (請原諒我的無能) – Jens
帶有NULL的頂部組是前面和底部組的值是後面的。基本上會設置一個值來識別每個獨特的組。 – TStewartFan