ホームページ > データベース > mysql チュートリアル > SQL Server で部門ごとの従業員名のカンマ区切りリストを生成するにはどうすればよいですか?

SQL Server で部門ごとの従業員名のカンマ区切りリストを生成するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-18 10:11:14
オリジナル
344 人が閲覧しました

How to Generate Comma-Delimited Lists of Employee Names by Department in SQL Server?

SQL Server で部門ごとにカンマ区切りの従業員リストを生成する

この SQL Server クエリは、EMP テーブルから部門ごとに整理された従業員名のカンマ区切りのリストを効率的に作成します。 このプロセスでは、サブクエリと文字列操作テクニックを巧みに使用します。

FOR XML PATH('') 句内に埋め込まれたサブクエリは、各部門の従業員名を収集します。 この連結は XML タグなしで行われ、特定の部門のすべての従業員名を含む XML フラグメントが生成されます。このフラグメントは allemp 変数に保存されます。

次に、REPLACE 関数は、allemp 文字列内のスペースをコンマに置き換え、目的のコンマ区切りのリストに変換します。 deptno でグループ化された最終結果では、部門ごとに 1 行が提供され、カンマで区切られた従業員名が表示されます。

出力は次のとおりです:

<code>deptno  allemp
10      CLARK,KING,MILLER
20      SMITH,JONES,SCOTT,ADAMS,FORD
30      ALLEN,WARD,MARTIN,BLAKE,TURNER,JAMES</code>
ログイン後にコピー

FOR XML PATH('') 句は、明示的なエイリアスを指定しないと、タグを囲まずに XML フラグメントを生成します。 特殊な XML 文字をより堅牢に処理するには、(付録に示すように) TYPE キーワードを追加して、適切なエスケープを確保することを検討してください。

このメソッドは、データのエクスポートやレポートの生成に役立つ、カンマ区切りリストを生成する実用的なソリューションを提供します。

以上がSQL Server で部門ごとの従業員名のカンマ区切りリストを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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