Самый простой способ трансформации из таблицу в строку: declare @s nvarchar(max) = select @s= @s + Value from t1 Однако при большом количестве строк / данных этот способ работает медленно. Гораздо быстрее работает связка ...

Оптимизация SQL - медленная конвертация таблицы в строку

Время чтения - менее одной минутыДата публикации 07.01.2025

Самый простой способ трансформации из таблицу в строку: 

declare @s  nvarchar(max) = ''
select @s=  @s + Value 
from t1

Однако при большом количестве строк / данных этот способ работает медленно.

Гораздо быстрее работает связка временной таблицы и STUFF.

DROP TABLE IF EXISTS #t
CREATE TABLE #t (st nvarCHAR(max))

insert into #t (st)
select value from table1 
	
declare @s nvarchar(max) = STUFF((	
                    SELECT st FROM  #t                                            	
                    FOR XML PATH(''), TYPE).value('.','nvarchar(max)') ,1,0, '')
drop table #t

Вместо select value from table1 может быть сколь угодно сложный запрос со своей генерацией текста (например, html разметка). 

 

 

 

 

Насколько полезной была статья?

Что еще посмотреть по SQL Server

Способы оптимизации SQL запросов с примерами

SQL Server сильно грузит процессор. Проблемы CPU у процесса SQLServer. Оптимизация запросов SQL по CPU

Как найти медленные проблемные запросы SQL Server. Оптимизация быстродействия SQL Server

SQL Server. Работа с индексами через запросы SQL

Где ставить индексы SQL Server

Оптимизация SQL запросов, план запроса в SQL Server

Решение проблем с большим кешем запросов SQL Server

Инструмент для анализа производительности запросов SQL Server Query Store

SQL Server Как найти запросы с проблемами (warning) в плане выполнения запроса (SQL Plan)

Анализ статистики по индексам в базе данных SQL Server

Определение какая база данных создает нагрузку на CPU

Медленный sql. Как найти, что вызывает замедление в хранимой процедуре MS SQL

Ищем партнеров-разработчиков на T-SQL и PL/pgSQL

Прямая работа с заказчиками как ИП или самозанятый. Нужно знать только SQL и HTML

Falcon Space - платформа для создания сайтов с личными кабинетами

В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
Запрос расчета стоимости веб-проекта на базе Falcon Space
Если видео Youtube плохо грузится, то попробуйте найти видео в ВК видео на канале Falcon Space
Сайт использует Cookie, Яндекс Метрику. Используя сайт, вы соглашаетесь с правилами сайта. См. Правила конфиденциальности и Правила использования сайта OK