logo Фёдор Самородов

Как удалить дублирующиеся строки в SSIS-пакете

В ‎интеграционные‏ ‎службы ‎SQL-сервера ‎включено ‎множество ‎полезных‏ ‎трансформаций. ‎Но‏ ‎простой‏ ‎операции ‎удаления ‎дублирующихся‏ ‎строк ‎среди‏ ‎них ‎нет. ‎Как ‎средствами‏ ‎SSIS‏ ‎удалить ‎дубликаты‏ ‎в ‎потоке‏ ‎данных?

Вот ‎на ‎вход ‎поступает ‎поток‏ ‎данных,‏ ‎содержащий ‎дубликаты.‏ ‎Как ‎удалить‏ ‎повторяющиеся ‎строки? ‎В ‎конструкторе ‎пакета‏ ‎для‏ ‎интеграционных‏ ‎служб ‎SQL-сервера‏ ‎нет ‎стандартной‏ ‎трансформации, ‎предназначенной‏ ‎для‏ ‎решения ‎этой‏ ‎задачи.

Но ‎это ‎не ‎страшно. ‎Для‏ ‎такого ‎простого‏ ‎преобразования‏ ‎мы ‎легко ‎можем‏ ‎приспособить ‎одну‏ ‎из ‎двух ‎простых ‎трансформаций:‏ ‎агрегацию‏ ‎или ‎сортировку.

Если‏ ‎вы ‎выбрали‏ ‎агрегацию, ‎то ‎нужно ‎просто ‎перевести‏ ‎все‏ ‎столбцы ‎в‏ ‎режим ‎GROUP‏ ‎BY:

Группировка ‎по ‎всем ‎полям ‎очевидным‏ ‎образом‏ ‎приведёт‏ ‎к ‎схлопыванию‏ ‎дублирующихся ‎строк:

А‏ ‎если ‎используете‏ ‎для‏ ‎этой ‎цели‏ ‎сортировку, ‎то ‎следует ‎выбрать ‎для‏ ‎упорядочения ‎все‏ ‎столбцы‏ ‎и ‎установить ‎флаг‏ ‎исключения ‎дубликатов:

Результат‏ ‎будет ‎тот ‎же ‎самый:


Предыдущий Следующий
Все посты проекта
0 комментариев

Подарить подписку

Будет создан код, который позволит адресату получить бесплатный для него доступ на определённый уровень подписки.

Оплата за этого пользователя будет списываться с вашей карты вплоть до отмены подписки. Код может быть показан на экране или отправлен по почте вместе с инструкцией.

Будет создан код, который позволит адресату получить сумму на баланс.

Разово будет списана указанная сумма и зачислена на баланс пользователя, воспользовавшегося данным промокодом.

Добавить карту
0/2048