Сравните 2 большие таблицы данных (70 тыс. Записей) - PullRequest
0 голосов
/ 17 января 2019

Как сравнить две большие таблицы данных в C #? Метод DataTable.Select длится вечно.

Мне нужно сравнить значение поля каждой записи с другой таблицей. Тип данных источника и целевого поля может быть разным, например, Тип данных table1 field1 - INT, а тип данных table1 field1 - VARCHAR.

1 Ответ

0 голосов
/ 17 января 2019

Вам необходимо профилировать приложение, чтобы найти, что именно медленно: перебирая столбцы и сравнивая значения или находя совпадающие записи (строки), которые необходимо сравнить.

Что касается записи, решение может быть преобразовать таблицу в словарь. Это работает, если в ваших таблицах есть уникальный столбец, тогда вы можете преобразовать их в словарь, где ключ - это уникальное значение столбца для записи, а значение - целая строка. Затем выполните итерацию первого DataTable, получите уникальное значение столбца и получите строку из 2nd Datatable, но из словаря.

Если проблема заключается в сравнении двух строк, то лучше показать код, который можно увидеть, возможно, есть дополнительные сравнения или приведение. Трудно сказать без кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...