Подсчет количества отношений с одной таблицы на другую - PullRequest
0 голосов
/ 11 сентября 2018

Очень сложно создать хороший заголовок для этого.

Учитывая таблицу products

productID
---------
892
583
388

И таблицу purchases

customerID   productID
----------   ---------
56           892
97           388
56           583
56           388
97           583

Какя бы пошел за столом всех клиентов, которые купили все продуктов?

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Используйте GROUP BY предложение с HAVING:

SELECT pr.customerID 
FROM products p INNER JOIN
     purchases pr
     on pr.productID = p.productID
GROUP BY pr.customerID 
HAVING COUNT(DISTINCT pr.productID) = (SELECT COUNT(*) FROM products);
0 голосов
/ 11 сентября 2018

Вы можете использовать group by и having:

select customerId
from purchases
group by customerId
having count(distinct productID) = (select count(*) from products);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...