У меня есть следующий запрос, который действительно снижает производительность, и я хочу знать, каковы их альтернативы подзапросу чтения XML Цель этого запроса - экспортировать данные с использованием некоторого HTML-кода.
Пример данных таблицы следующий:
p_s_id | p_c_id | notes
-----------------------
1 | 1 | this note is really long.
2 | 1 | This is fun.
3 | null | long note here
4 | 2 | this is not fun
5 | 2 | this is not fun
6 | 3 | long note here
Я хочу сделать все заметки с одинаковым p_c_id и соединить их вместе, как показано ниже.
Может быть предоставлена любая дополнительная информация, поэтому не стесняйтесь комментировать.
select distinct
p_c_id
,'<br/><br/>'+(select distinct '• ' +cast(note as nvarchar(max)) + ' <br/> '
from dbo.spec_notes_join m2
where m.p_c_id = m2.p_c_id
and isnull(note,'') <> ''
for xml path(''), type).value('.[1]', 'nvarchar(max)') as notes_spec
from dbo.spec_notes_join m
, поэтому экспорт будет выглядеть следующим образом:
p_c_id | notes
--------------
1 | <br/><br/> • this note is really long. <br/> &bull This is fun <br/>
2 | <br/><br/> • This is not fun. <br/>
3 | <br/><br/> • long note here. <br/>