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

mysql:encontrando linhas que possuem várias tags e o mesmo id


O tipo de problema é chamado de Relational Division
SELECT  a.md5, 
        a.url,
        a.title
FROM    Links a
        INNER JOIN Tags b
            ON a.md5 = b.md5
WHERE   b.Tag IN ('awesome', 'useful') -- <<== list of desired tags
GROUP   BY a.md5, a.url, a.title
HAVING  COUNT(*) = 2                   -- <<== number of tags defined

RESULTADO
╔══════╦════════════╦═══════╗
║ MD5  ║    URL     ║ TITLE ║
╠══════╬════════════╬═══════╣
║ a0a0 ║ google.com ║ foo   ║
╚══════╩════════════╩═══════╝