使用SQL的GROUP BY語句連接列值
假設您有一個包含以下資料的表格:
<code>ID | 用户 | 活动 | 页面URL 1 | 我 | act1 | ab 2 | 我 | act1 | cd 3 | 你 | act2 | xy 4 | 你 | act2 | st</code>
您希望按使用者和活動將資料分組,並將每個群組中頁面URL列的值組合成單一以逗號分隔的字串。所需輸出如下:
<code>用户 | 活动 | 页面URL 我 | act1 | ab, cd 你 | act2 | xy, st</code>
要使用GROUP BY查詢實現此連接,您可以使用STUFF()函數以及GROUP BY子句中的子查詢。以下是詳細分解:
<code class="language-sql">SELECT [用户], 活动, STUFF( (SELECT DISTINCT ',' + 页面URL FROM 表名称 WHERE [用户] = a.[用户] AND 活动 = a.活动 FOR XML PATH ('')) , 1, 1, '') AS URL列表 FROM 表名称 AS a GROUP BY [用户], 活动</code>
透過執行此查詢,您將獲得所需的輸出,其中每個唯一的用戶和活動組合的頁面URL值都合併在一起並以逗號分隔。
以上是如何在 SQL 中使用 GROUP BY 連線列值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!