Страницы

Поиск по вопросам

четверг, 2 мая 2019 г.

Оставить только дубли в таблице

Имеется таблица вида:
a|b|c
Как оставить только те строки, где значение "a" встречается больше одного раза?
UPD: a|b|c - это три столбца, столбцы b и с всегда уникальны и имеют разные значения, а значение столбца "а" может встречаться несколько раз


Ответ

Пусть таблица называется tbl, и содержит три столбца a, b и c. Тогда для решения задачи можно поступить следующим образом
DELETE tbl FROM tbl JOIN ( SELECT a, b, c FROM tbl GROUP BY a HAVING COUNT(*) <= 1 ) AS t ON tbl.a = t.a AND tbl.b = t.b AND tbl.c = t.c

Комментариев нет:

Отправить комментарий