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

наилучший способ измельчения XML-данных в различные столбцы базы данных? До сих пор я в основном использовал узлы и функции значений следующим образом:

INSERT INTO some_table (column1, column2, column3)
SELECT
Rows.n.value('(@column1)[1]', 'varchar(20)'),
Rows.n.value('(@column2)[1]', 'nvarchar(100)'),
Rows.n.value('(@column3)[1]', 'int'),
FROM @xml.nodes('//Rows') Rows(n)

Однако я нахожу, что это становится очень медленным даже для данных XML среднего размера.

Ответы на вопрос(8)

Ваш ответ на вопрос