开发者社区> 问答> 正文

mysql行转列语句,什么意思?

因为要面试,补充下sql知识,下面的行转列语句,不明其中sum函数在此处的意思,这个sum可以换成max,为什么要加上这个呢,去掉就去掉这个函数只显示语文成绩,其他的都为0
`select S.studentname,sum(case subject when '语文' then score else 0 end) 语文,
sum(case subject when '数学' then score else 0 end) 数学,
sum(case subject when '英语' then score else 0 end) 英语 from student as s GROUP BY S.studentname;`
姓名 语文 数学 英语
stone 98 80 66
周顺得 100 80 50
没使用函数的结果如下:
stone 98 0 0
周顺得 100 0 0

展开
收起
落地花开啦 2016-02-13 11:44:07 3407 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    看看下面的效果,你就明白了
    7

    2019-07-17 18:41:52
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像