Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

relacionamento mysql n:m:encontre linhas com várias relações específicas


Você pode usar esta solução. Isso obtém todos os produtos que contêm TODOS palavras-chave 1, 23 e 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

Onde 3 é o número de itens em seu WHERE IN list, para que você possa ajustar de acordo com a quantidade de tags que deseja verificar.