Mysql
 sql >> Base de données >  >> RDS >> Mysql

requête sql pour sélectionner un enregistrement ayant le même identifiant mais une valeur différente dans deux colonnes

SELECT youtable.*
FROM yourtable
WHERE articleid IN (SELECT articleid
                    FROM yourtable
                    WHERE (fieldsid, value) IN ((1,1),(2,1))
                    GROUP BY articleid
                    HAVING COUNT(*)=2)

edit :si vous n'avez besoin que du premier enregistrement :

SELECT youtable.*
FROM yourtable
WHERE id IN (SELECT MIN(id)
             FROM yourtable
             WHERE (fieldsid, value) IN ((1,1),(2,1))
             GROUP BY articleid
             HAVING COUNT(*)=2)