Я загружаю файлы данных в промежуточную таблицу, которая отлично работает, но после этого мне нужно преобразовать в несколько типов данных для окончательной таблицы, и оператор вставки становится невозможным для больших таблиц. Заявления создаются моим инструментом, и я хочу оптимизировать эту часть. Операторы вставки выглядят примерно так, но с гораздо большим количеством столбцов, проверкой достоверности и некоторыми необходимыми заменами внутри этих преобразований.
INSERT INTO foo
SELECT
convert(decimal(10,2),col1),
convert(date, col2),
convert(decimal(10,2),col3),
convert(int, col4),
convert(decimal(10,2),col5)
...
from foo_staging
На маленьких таблицах это работает довольно быстро, но по мере того, как таблица становится больше, производительность становится очень плохой. Любые идеи, как улучшить производительность конвертера?
РЕДАКТИРОВАТЬ: я использую Bulkinsert в промежуточной таблице, и файлы действительно большие.