SQL の GROUP BY ステートメントでの列接続
SQL では、GROUP BY ステートメントに基づいて列を結合または結合する一般的な方法は、文字列演算子と組み合わせて集計関数を使用することです。これを達成する方法を見てみましょう。
次のテーブルの例を考えてみましょう:
ID | 用户 | 活动 | 页面URL |
---|---|---|---|
1 | 我 | act1 | ab |
2 | 我 | act1 | cd |
3 | 你 | act2 | xy |
4 | 你 | act2 | st |
各ユーザーとアクティビティ グループの PageURL 値をカンマで区切って連結するには、次のクエリを使用できます:
SELECT [ユーザー], activity, STUFF((SELECT ',' ページ URL FROM テーブル名 WHERE [ユーザー] = a. [ユーザー] AND activity = a. activity FOR XML PATH ('')) , 1, 1, '') AS URL リスト FROM テーブル名 AS a GROUP BY [ユーザー]、アクティビティ
クエリの内訳:
生成されたテーブルには目的のレイアウトが含まれます:
用户 | 活动 | URL列表 |
---|---|---|
我 | act1 | ab, cd |
你 | act2 | xy, st |
このアプローチは、集計関数と文字列操作の機能を利用して、GROUP BY 操作に基づいて列の値を効果的に連結するため、さまざまなデータ操作タスクに対する柔軟なソリューションになります。
以上がSQLでGROUP BYに基づいて列を連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。