mysql將多行變成多列的方法:首先在原表中查詢資料;然後將多行資料合併到同一列或不同列即可,如【select name ,group_concat(sore Separator '; ') as score from stu group by name】。
MySQL中的行列變換
(影片教學推薦:mysql影片教學)
mysql 行列轉換,在專案中應用的極為頻繁,尤其是一些金融項目裡的報表。其中最頭痛的就是多行轉多列,動態的列行轉換。最近在研究這些行裡轉換,還是從最簡單的行列轉換開始。
首先範例資料原表如下:
【多行變一列】(合併後的資料在同一列上):
select name ,group_concat(sore Separator ';') as score from stu group by name
【多行變多列】(合併後的資料在不同欄位上):
SELECT name , MAX(CASE type WHEN '数学' THEN score ELSE 0 END ) math, MAX(CASE type WHEN '英语' THEN score ELSE 0 END ) English , MAX(CASE type WHEN '语文' THEN score ELSE 0 END ) Chinese FROM stu GROUP BY name
以上是mysql如何將多行變成多列的詳細內容。更多資訊請關注PHP中文網其他相關文章!