Anda dapat menggunakan solusi ini. Ini mendapatkan semua produk yang mengandung SEMUA kata kunci 1, 23, dan 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
Dimana 3
adalah jumlah item dalam WHERE IN
list, sehingga Anda dapat menyesuaikannya berdasarkan jumlah tag yang ingin Anda periksa.