SQL 50 › 索引 › A4 Sorting and Grouping 排序与分组
LC 1045买下所有产品的客户Customers Who Bought All Products 中等
Customer 表记录客户购买的产品,Product 表是全部产品清单;找出买齐了所有产品的客户 id。
思路 按客户 COUNT(DISTINCT 产品),HAVING 与产品总数比较。
SELECT C.customer_id FROM Customer C JOIN Product P ON C.product_key = P.product_key GROUP BY C.customer_id HAVING COUNT(DISTINCT C.product_key) = (SELECT COUNT(*) FROM Product);