您好,欢迎访问本站博客! 控制台  查看权限
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧
  • 网站所有资源均来自网络,如有侵权请联系站长删除!

Mysql行列转换,利用case when then

默认分类 Sena 2019-09-24 46 次浏览 0个评论

有一个SQL题在面试中出现的概率极高,最近有学生出去面试仍然会遇到这样的题目,在这里跟大家分享一下。

题目:数据库中有一张如下所示的表,表名为sales。

季度销售量
1991111
1991212
1991313
1991414
1992121
1992222
1992323
1992424



要求:写一个SQL语句查询出如下所示的结果。

一季度二季度三季度四季度
199111121314
199221222324



我给出的答案是这样的:

select 年, 
sum(case when 季度=1 then 销售量 else 0 end) as 一季度, 
sum(case when 季度=2 then 销售量 else 0 end) as 二季度, 
sum(case when 季度=3 then 销售量 else 0 end) as 三季度, 
sum(case when 季度=4 then 销售量 else 0 end) as 四季度 
from sales group by 年;


已有 46 位网友参与,快来吐槽:

发表评论