Как получить дублирующиеся поля?

mike

pmcoder
Как получить дублирующиеся поля?

Есть таблица
id
user_id
product_id
...
Необходимо поставить уникальный ключ на (user_id, product_id). Но в таблице есть уже есть строки с дублирующимися парами user_id, product_id. Так, что ключ поставить не удается.
Нужен запрос, который выведет строки для которых user_id, product_id одинаковые.
Возможно есть другое решение задачи. Буду благодарен за все предложения.
 

mike

pmcoder
Это скорей всего поможет, но не известно какие строки будут удалены, а мне необходимо проанализировать дубли и самому выбрать какие удалять.
 

zerkms

TDD infected
Команда форума
сгруппируй по 2 полям и выбери те - для записи, для которых COUNT(*) > 2

SELECT COUNT(*) AS `cnt` FROM `tbl` GROUP BY `user_id`, `product_id` HAVING `cnt` > 2
 
Сверху