目录
- 题目截图
- 题目分析
- case when写法
- if写法
- 总结
题目截图
题目分析
- groupby的肯定是日期
- 怎么根据fruit类型分类呢
- 苹果就是+,orange就是-
- 可以用case when或者if
- 然后来一个sum就可以了
- 注意,这里直接在select后面跟着查就可以了
case when写法
# Write your MySQL query statement below
# 同一天需要判断什么类型
# 因此groupby日期,然后casewhen类型
# 然后求和即可
select sale_date,
sum(
case
when fruit = 'apples' then sold_num
else -sold_num
end
) diff
from Sales
group by 1
order by 1
if写法
# Write your MySQL query statement below
# 同一天需要判断什么类型
# 因此groupby日期,然后casewhen类型
# 然后求和即可
select sale_date,
sum(if(fruit = 'apples', sold_num, -sold_num)) diff
from Sales
group by 1
order by 1
总结
- 这里有点不太自然的是
- 它这个聚合的过程先经过if或者case when筛选之后
- 在select后面紧跟着聚合的
- 这就是聚合函数(if 或者 case when)的用法吧