开发者社区> 问答> 正文

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 3451 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

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

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

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像