Найти дублированные данные внутри Datatable с помощью Select - PullRequest
0 голосов
/ 02 декабря 2011

Мне нужна помощь в чем-то.

Я читаю некоторые данные из файла Excel, и мне нужно вставить их в таблицу Oracle.Хорошо, но прежде чем вставить его, я должен сделать несколько проверок.

Парень, который делал это раньше, сделал проверки после вставки.Я изменяю это, чтобы сделать это раньше, потому что это количество данных, для вставки которого требуется некоторое время.

Вот текущий способ проверки:

           SELECT FV, COD_BRICK, CANAL, SEGMENTO
             FROM TJANSSEN_MATRIZ_DDD_SEGMENTO
             WHERE (FV, COD_BRICK, CANAL, SEGMENTO) IN
             (SELECT FV, COD_BRICK, CANAL, SEGMENTO
                 FROM TJANSSEN_MATRIZ_DDD_SEGMENTO
                 GROUP BY FV, COD_BRICK, CANAL, SEGMENTO
                 HAVING COUNT(*) > 1)
             ORDER BY FV, COD_BRICK, CANAL, SEGMENTO;

Если это возвращает что-тото есть дубликаты, и я должен предупредить или выдать ошибку.

В любом случае, я точно не знаю, как это сделать, используя метод Select () Datatable.Я имею в виду, я уже использовал его иногда, но с простыми выражениями.

Спасибо за чтение и за вашу помощь.

dev_Gabriel (:

1 Ответ

1 голос
/ 02 декабря 2011

Самый эффективный способ сделать это:

  1. Импорт данных Excel во временную таблицу хранения в вашей базе данных.
  2. Запустите запрос, который извлекает уникальные записи между этой таблицей хранения и целевой таблицей.
  3. Вставьте эти записи в вашу целевую таблицу.
  4. удали все из твоего стола.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...