MySQL刷題筆記 行轉列,列轉行

2021-10-02 19:50:01 字數 1103 閱讀 8966

假設有如下的表:

如果有空記錄,例如有個student_id為4的學生沒有數學成績的話,可以使用else填補空缺:

select student_id,

max(

case project when

'math'

then grade else

null

end)math,

max(

case project when

'english'

then grade else

null

end)english,

max(

case project when

'chinese'

then grade else

null

end)chinese

from grades group

by student_id;

顯示的結果為:

Mysql 行轉列 列轉行

create table test tb grade id int 10 not null auto increment,user name varchar 20 default null,course varchar 20 default null,score float default 0 pr...

MySQL行轉列 列轉行

max case course when 數學 then score else 0 end 數學,max case course when 語文 then score else 0 end 語文,max case course when 英語 then score else 0 end 英語 fro...

MySQL 行轉列 列轉行

以下內容包括 行轉列 sql 執行效果展示 列轉行 sql 執行效果展示 總結 附上的建表語句 一 行轉列 廢話不多說,先上sql 兩種方式 行轉列 方法 select id,name,group concat case when subject 語文 then score end separato...