19.12.2018

Как выбрать все дубли в таблице по двум полям mysql?

Порою в базе у Вас могут оказатся дубли записей, чтобы их было легче найти можно воспользоватся таким sql-запросом:

SELECT 
  `table`.*
FROM 
  `table`
WHERE 
  (`table`.`field1`, `table`.`field2`) 
IN 
  ( 
    SELECT 
      `table`.`field1`, `table`.`field2` 
    FROM 
      `table` 
    GROUP BY 
      `table`.`field1`, `table`.`field2` 
    HAVING 
      COUNT( `table`.* ) > 1 
  ) 
ORDER BY 
  `table`.`field1`, `table`.`field2`
LIMIT 0 , 50

Запрос вернет все записи имеющие дубли, выбранные по двум полям (при необходимости кол-во полей изменяется на нужные Вам).

Поделиться: