sql >> Database >  >> RDS >> Mysql

Dubbele records retourneren

SELECT col1, col2, col3, col4
     , COUNT(*) AS cnt
FROM yourTable
GROUP BY col1, col2, col3, col4
HAVING COUNT(*) > 1

Als er extra kolommen zijn die u wilt laten zien, kunt u JOIN het bovenstaande naar de tabel:

SELECT t.*
     , dup.cnt
FROM yourTable t
    JOIN
      ( SELECT col1, col2, col3, col4
             , COUNT(*) AS cnt
        FROM yourTable
        GROUP BY col1, col2, col3, col4
        HAVING COUNT(*) > 1
      ) AS dup
      ON  t.col1 = dup.col1
      AND t.col2 = dup.col2
      AND t.col3 = dup.col3
      AND t.col4 = dup.col4


  1. Mysql retourneert een onjuist bigint-resultaat met één, zeer vreemde fout

  2. Intel SSD, nu van de sh..err, beschaamde lijst

  3. Mysqli bind_param gebruiken met datum- en tijdkolommen?

  4. MySQL:een rijnummer (rangschikking) krijgen voor een specifieke rij