Страница 1 из 1
Дубликаты в таблице
Добавлено: 01 июл 2013, 07:41
Grace2
Подскажите, SQL запрос, для поиска дубликатов (повторяющихся) записей в таблице?
Re: Дубликаты в таблице
Добавлено: 02 июл 2013, 12:24
juffin_h
Думается мне, что одним запросом не обойдешься. Можно через один Update и пару Select. Итого 3. К тому же, в исходной таблице надо создать вспомогательную колонку.
Re: Дубликаты в таблице
Добавлено: 02 июл 2013, 13:04
rhot
Код: Выделить всё
SELECT DISTINCT id, count(*) FROM table GROUP BY 1 HAVING count(*)>1 ORDER BY 2 DESC;
Но это только для PostgreSQL.
Re: Дубликаты в таблице
Добавлено: 02 июл 2013, 14:09
sysrepos
запросы можно писать в самом окне мапбэйсика, будут выделены все повторяющиеся объекты
select kol, count(*) from tab group by kol into q1
select * from q1 where col2>1 into q2
select * from tab where kol in (select kol from q2)
kol - колонка в таблице tab
во вложении программа, которая выделяет дубликаты:
программа работает следующим образом - если есть повторяющиеся значения, программа выделит их все, кроме одного, чтобы можно было удалить дубликаты, но остался один недублирующийся объект
qqq
qqq
qqq
www
www
www
www
e
r
t
Re: Дубликаты в таблице
Добавлено: 01 июл 2014, 17:16
sysrepos
переписал утилиту
(самому понадобилась такая утилита, и понял: то, что написал ранее - не самый рабочий вариант)