簡體   English   中英

SQL查詢顯示包含列表中所有值的分組行

[英]SQL query on showing a grouped rows that contains all values from a list

SQL查詢

TABLE - CUSTOMER
1001,1
1001,2
1001,3
1002,1
1002,3
1003,3

TABLE - PRODUCT
1
2
3

結果應為1001因為它使所有值與訂單表匹配。
PRODUCT表可能會隨時間而變化。
我想找出誰從我這里買了所有產品。
謝謝!

假設CustomerTB是一個包含兩列的表: CustomerIDProductID 您需要按CustomerID對其進行分組,並計算他購買的獨特產品。 如果客戶只能為每個產品購買一個,則不需要DISTINCT ),並且應該等於product表列表中的product總數。

SELECT customerID
FROM   CustomerTB
GROUP BY CustomerID
HAVING COUNT(DISTINCT productID) = (SELECT COUNT(*) FROM ProductTB)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM