ホームページ > データベース > mysql チュートリアル > 古い SQL Server バージョン (2017 より前) で文字列の集計を実現するにはどうすればよいですか?

古い SQL Server バージョン (2017 より前) で文字列の集計を実現するにはどうすればよいですか?

DDD
リリース: 2025-01-20 19:27:15
オリジナル
448 人が閲覧しました

How Can I Achieve String Aggregation in Older SQL Server Versions (Pre-2017)?

古いバージョンの 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート