このソリューションを使用できます。これにより、 ALLを含むすべての製品が取得されます キーワード1、23、および54:
SELECT a.*
FROM products a
INNER JOIN product_tags b ON a.product_id = b.product_id
WHERE b.tag_id IN (1,23,54)
GROUP BY a.product_id
HAVING COUNT(1) = 3
ここで3
WHERE IN
内のアイテムの数です リストなので、チェックしたいタグの数に応じて調整できます。