sql >> Base de Datos >  >> RDS >> Mysql

Seleccionar publicación de dos etiquetas (Y)

Para verificar si un título tiene AMBOS 'categoría1' y 'categoría2', puede usar la siguiente consulta SQL:

SELECT title 
FROM post 
JOIN tag ON post.post_id = tag.post_id 
WHERE tag.tag_id IN (SELECT tag_id FROM tag WHERE tag = 'category1')
AND tag.tag = 'category2';

Para verificar otras categorías, simplemente repita la cláusula WHERE:

SELECT title 
FROM post 
JOIN tag ON post.post_id = tag.post_id 
WHERE tag.tag_id IN (SELECT tag_id FROM tag WHERE tag = 'category1')
AND tag.tag_id IN (SELECT tag_id FROM tag WHERE tag = 'category2')
AND tag.tag = 'category3';

Esto arrojaría resultados para títulos que tienen las 3 categorías.