Предположим, у меня есть 2 таблицы:
A: C_ID, P_Id
B: P_ID
Я хочу найти все C_ID, которые купили все продукты в B (в основном все P_ID в B).
Можете ли вы проверить, правильно ли указано ниже? Любые альтернативы, которые более эффективны / проще?
SELECT A.C_ID
FROM A
JOIN B ON A.P_iD = B.P_ID
GROUP BY A.C_ID
HAVING COUNT(DISTINCT A.P_ID) >= (SELECT COUNT(DISTINCT P_ID) FROM B)
Спасибо!