培森的Blog Mysql Mysql行列转换,利用case when then

Mysql行列转换,利用case when then

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

有一个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 年;

本文来自网络,不代表培森的Blog立场,转载请注明出处:https://blog.xupeisen.com/archives/119

作者: 培森

联系我们

联系我们

13262951234

在线咨询: QQ交谈

邮箱: admin@xupeisen.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部