Поиск дублирующих строк в таблице


Сам запрос выглядит следующим образом:
SQL>SELECT Field, COUNT(*) FROM TABLE
    GROUP BY Field
    HAVING COUNT(*) > 1;


вместо Field - указываете необходимое поле(я)(колонки).

Пример готового запроса:
SQL>SELECT BOR_BUDGSERVICE_ID, OKVED_CODE, COUNT(*)
    FROM PL_BOR_BUDGSERV_OKVED
    group by BOR_BUDGSERVICE_ID, OKVED_CODE
    having count(*)>1;

Для использования полученной выборки, а именно значения BOR_BUDGSERVICE_ID для остальных запросов нужно использовать конструкцию:
SQL>SELECT DISTINCT(BODY.BOR_BUDGSERVICE_ID) from
    (SELECT BOR_BUDGSERVICE_ID, OKVED_CODE, COUNT(*)
    FROM PL_BOR_BUDGSERV_OKVED
    group by BOR_BUDGSERVICE_ID, OKVED_CODE
    having count(*)>1) BODY;


Запись в продолжении:

Комментарии

Популярные сообщения из этого блога

TRUNCATE / DELETE / DROP или как очистить таблицу

Linux (РедОС). Сброс пароля

ЭС с ЦБ РФ. РЕКВИЗИТНЫЙ СОСТАВ ЭС

КБК. КВФО - Код вида финансового обеспечения (деятельности)

ТФФ 35.0. Полный перечень документов альбома ТФФ (Таблица 2)