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

Instruction SQL pour sélectionner les enregistrements en double apparaissant plus de 2 fois

SELECT t.rid
     , t.id
     , t.sku
     , t.name
  FROM test t
  JOIN ( SELECT s.sku 
           FROM test s 
          GROUP BY s.sku
         HAVING COUNT(1) > 1
       ) d
    ON d.sku = t.sku

La vue en ligne alias d renvoie les valeurs sku qui apparaissent plus d'une fois dans le tableau. Nous pouvons joindre les résultats de cette requête à la table pour obtenir toutes les lignes qui ont un sku qui correspond.

Sont id et sku interchangeable? Ce n'était pas clair pour moi. (Si id dépend de sku et sku dépend de id , vous pouvez alors remplacer les références à sku avec des références à id dans cette requête.