在SQL Server中,假設我們有一個SALES_HISTORY
表,如下所示。按複雜查詢SQL Server組
CustomerNo PurchaseDate ProductId
1 20120411 12
1 20120330 13
2 20120312 14
3 20120222 16
3 20120109 16
...併爲每個購買每個客戶的多條記錄...
我如何寫找到相應的查詢:
對每一個客戶,
- 找到他在MOST購買的產品,
- 找到該產品在他購買的所有產品中所佔的百分比。
結果表必須有這樣的列:
CustomerNo,
MostPurchasedProductId,
MostPurchasedProductPercentage
對於'CustomerNo' 1的示例會發生什麼情況?我們應該爲'MostPurchasedProductId'返回'productId' 12或14? – Lamak
@siride不,它不是。討論數據庫服務器時,版本非常重要。例如,在SQL 2k或SQL 7中找不到某些功能(如row_number,partition by)。所以如果你想要一個明確的答案,比你應該有一個明確的問題。 – Marian