Я хочу объединить столбец с несколькими значениями и объединить их в виде списка значений, разделенных запятыми, в одно поле.SQL-запрос работает, однако я думаю, что у меня возникают проблемы с производительностью.
После 30 минут загрузки кода SQL возникают проблемы с тайм-аутом: DataSource.Error: Microsoft SQL: время выполнения истекло.Время ожидания истекло до завершения операции, или сервер не отвечает.
Всякий раз, когда я выбираю 1000 верхних строк, он все равно загружается в течение всей минуты.
LEDGERTRANS.TXT являетсяstring, а также с MAX (), окружающим его, это дает мне тайм-аут.
MRPRJPROJTRANSPOSTING имеет 2,5M строк LEDGERTRANS +/- 5M строк, хотя я присоединяюсь только к тому, что мне нужно от него.
Следующий код - то, что я использую:
SELECT
MRPRJPROJTRANSPOSTING.VOUCHER,
[Factuuromschrijving(en)] = STUFF(
(SELECT ',' + LEDGERTRANS.TXT
FROM LEDGERTRANS
WHERE LEDGERTRANS.VOUCHER = MRPRJPROJTRANSPOSTING.VOUCHER
AND LEDGERTRANS.DATAAREAID = MRPRJPROJTRANSPOSTING.DATAAREAID FOR
XML PATH (''))
, 1, 1, '' )
FROM MRPRJPROJTRANSPOSTING
Может быть, есть другой способ сделать подобное соединение?
С уважением, Игорь