Yin*_*ong 2 sql list match relational-division
SQL查询
TABLE - CUSTOMER
1001,1
1001,2
1001,3
1002,1
1002,3
1003,3
TABLE - PRODUCT
1
2
3
Run Code Online (Sandbox Code Playgroud)
结果应为1001因为它使所有值与订单表匹配.
PRODUCT表可能会随时间而变化.
我想找出谁从我这里买了所有产品.
谢谢!
假设这CustomerTB是一个有两列的表:CustomerID和ProductID.你需要将它分组CustomerID并计算它所购买的独特产品.(如果客户只能为每个产品购买一个,则不需要DISTINCT),并且应该等于product表格列表中的产品总数.
SELECT customerID
FROM CustomerTB
GROUP BY CustomerID
HAVING COUNT(DISTINCT productID) = (SELECT COUNT(*) FROM ProductTB)
Run Code Online (Sandbox Code Playgroud)