私は実際にパフォーマンスを犠牲にし、xmlリーダーサブクエリに対してどのような選択肢があるかを知りたいという次のクエリを持っています。このクエリの目的は、いくつかのHTMLコードでデータをエクスポートすることです。テーブル値関数[XML Reader]非常に遅い - 代替?
テーブルデータの例を次に示します。
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/>
パフォーマンスがはるかに優れていました。 –
CLRははるかに良い方法でした。申し訳ありませんが、私は前に明らかにしていません。 –