在MySQL 中利用GROUP_CONCAT 和CONCAT 進行資料轉換
在MySQL 中,可以透過以下方式實現將多行資料合併為單一字串:使用GROUP_CONCAT 函數。考慮一個包含以下資訊的表格:
id | Name | Value |
---|---|---|
1 | A | 4 |
1 | A | 5 |
1 | B | 8 |
2 | C | 9 |
目標可能是將這些資料轉換為以下格式:
id | Column |
---|---|
1 | A:4,5,B:8 |
2 | C:9 |
要實現此目的,可以使用GROUP_CONCAT 和CONCAT 的組合方法可以就業。這是查詢:
select id, group_concat(`Name` separator ',') as `ColumnName` from ( select id, concat(`Name`, ':', group_concat(`Value` separator ',')) as Name from mytbl group by id, Name ) tbl group by id;
此查詢分兩個階段運行:
執行此查詢,您將獲得所需的資料轉換,其中的行如下格式:
id | Column |
---|---|
1 | A:4,5,B:8 |
2 | C:9 |
以上是MySQL 的 GROUP_CONCAT 和 CONCAT 函數如何將多行轉換為單一逗號分隔的字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!