ホームページ > データベース > mysql チュートリアル > FOR XML PATH() を使用して T-SQL の複数のレコードのフィールドを連結する方法

FOR XML PATH() を使用して T-SQL の複数のレコードのフィールドを連結する方法

Patricia Arquette
リリース: 2025-01-15 07:58:46
オリジナル
242 人が閲覧しました

How to Concatenate Fields from Multiple Records in T-SQL Using FOR XML PATH()?

T-SQL で複数のレコードのフィールドを結合するには FOR XML PATH() を使用します

多対多の関係を持つ複数のテーブルがある特定のシナリオでは、サブクエリと FOR XML PATH() 関数を使用して必要なフィールドを結合できます。望ましい結果を達成する方法は次のとおりです:

<code class="language-sql">SELECT  *,
        ( 
            SELECT  u.FName + ', '
            FROM    @Users u INNER JOIN 
                    @Reviewers rs ON u.UserID = rs.UserID
            WHERE   rs.ReviewID = r.ReviewID
            FOR XML PATH('')
        ) AS Users
FROM    @Reviews r</code>
ログイン後にコピー

このクエリはまず @Reviews、@Reviewers、@Users テーブルを結合して、統合データセットを作成します。次に、サブクエリを使用して、関連付けられた ReviewID ごとに @Users から FName 列を選択します。 FOR XML PATH() 関数は、これらの FName 値をカンマ区切りの文字列に連結します。

最後に、生成された接続文字列がメインの SELECT ステートメントの「Users」列に割り当てられます。出力は次のようになります:

<code>ReviewID    ReviewDate          Users
1           2009-01-12          Bob, Joe, Frank
2           2009-01-25          Sue, Alice</code>
ログイン後にコピー

以上がFOR XML PATH() を使用して T-SQL の複数のレコードのフィールドを連結する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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