古いバージョンの SQL Server で String_agg を使用する方法
string_agg
関数は、複数の行を 1 つの文字列に連結するための強力なツールであり、PostgreSQL や SQL Server などのさまざまな SQL データベースで広く使用されています。ただし、string_agg
関数は、2017 より前のバージョンの SQL Server ではネイティブにサポートされていません。
SQL Server 2014 のソリューション:
SQL Server 2014 で同様の機能を実現するには、次のクエリを使用できます。
<code class="language-sql">SELECT STUFF((SELECT ',' + CAST(t.id AS VARCHAR(MAX)) FROM tabel t FOR XML PATH('') ), 1, 1, '');</code>
このクエリ内:
FOR XML PATH('')
関数は、ID 値のカンマ区切りリストを生成します。 STUFF
関数は、結果から最初のカンマを削除します。 CAST(t.id AS VARCHAR(MAX))
元のデータ型に関係なく、すべての ID 値が文字列に変換されるようにします。 このメソッドは string_agg
の動作を効果的にエミュレートし、複数の ID 値を単一のカンマ区切り文字列に連結できるようにします。
以上が古い SQL Server バージョン (2017 より前) で文字列の集計を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。