Mysql
 sql >> Database >  >> RDS >> Mysql

Mysql:seleziona gli ID che corrispondono a tutti i tag

L'idea della query è che devi abbinare il numero di record al numero di valori che hai fornito in WHERE clausola.

SELECT ID
FROM tableName
WHERE tag IN (4, 8)
GROUP BY ID
HAVING COUNT(*) = 2

se il vincolo univoco non è stato specificato sul tag per ogni ID, allora DISTINCT è necessario

SELECT ID
FROM tableName
WHERE tag IN (4, 8)
GROUP BY ID
HAVING COUNT(DISTINCT tag) = 2