sql查询上月与本月的数据差_奥迪汽车销售数据的大屏可视化
1、项目简单介绍
该项目是2018年的是一个项目,主要针对奥迪汽车的销售形况做可视化分析,这个项目主要是服务于决策者、项目经理等领导,用于做决策。
这个项目有两个主要的目的:
① 奥迪汽车销售管理:主要各领导需要了解销售相关指标,如销量、销售额;
② 竞品渠道分布情况:看同行业乘用车的市场销售情况。
2、项目需求
1)汽车销售分析报告(竞品分析下次再做)
根据外部数据从市场需求、消费能力、企业竞争、品牌竞争几方面来分析乘用车的市场销售情况。
2)销售绩效分布
外部数据和内部数据相结合,从销售区域、车型、时间等多个维度分析本企业的业绩完成情况。
3、项目设计
1)区域分析
- 各区域今年的销售情况及与整体销售的占比;
- 各区域销售情况(销量和收入)的同比及环比情况;
2)车型分析
- 各车型12个月的销售趋势;
- 各车型在不同时间段销售同比及环比情况;
- 各车型的销售排名;
4、软件实现——区域分析
1)区域销售分布分析
几个关键点:
最终效果如下:
2)区域占比分析
① sql分析
# 不同区域的销量
select
areaname 区域名称,
quantity 销量
from dw_car_areainfo
where brand = "奥迪" and stat_month = "201801"
# 不同地区的总销量
select
sum(quantity) 总销量
from dw_car_areainfo
where brand = "奥迪" and stat_month = "201801"
# 不同区域的销量占比
select
区域名称,
销量/总销量 销量占比,
(1-销量/总销量) 其它占比
from
(select
areaname 区域名称,
quantity 销量
from dw_car_areainfo
where brand = "奥迪" and stat_month = "201801") a,
(select
sum(quantity) 总销量
from dw_car_areainfo
where brand = "奥迪" and stat_month = "201801") b
结果如下:
② tableau实现
几个关键点:
注意:做圆环图的时候,有一个编辑轴的地方需要注意。为了调整图与上边缘的间隔,使得图显示在正中央。
最终效果如下:
3)各区域销售情况(销量和收入)的同比和环比情况
- 同比增长率=(本期数-同期数)/|同期数|×100%
- 环比增长率=(本期数-上期数)/上期数×100%
- 注意:本项目中2018年1月为本月。
① sql分析
# 不同区域的销售本月、上月、同期数据,以及收入本月、上月、同期数据
select
areaname 区域名称,
sum(case when stat_month = "201801" then quantity else 0 end) 销量本月,
sum(case when stat_month = "201712" then quantity else 0 end) 销量上月,
sum(case when stat_month = "201701" then quantity else 0 end) 销量同期,
sum(case when stat_month = "201801" then revenue else 0 end) 收入本月,
sum(case when stat_month = "201712" then revenue else 0 end) 收入上月,
sum(case when stat_month = "201701" then revenue else 0 end) 收入同期
from dw_car_areainfo
where brand = "奥迪" and stat_month in ("201801","201712","201701")
group by areaname
# 不同区域的销售同比、环比和收入同比、环比
select
区域名称,
销量本月,
收入本月,
(case when 销量上月 <> 0 then (销量本月-销量上月)/销量上月 else 0 end) 销量环比,
(case when 销量同期 <> 0 then (销量本月-销量同期)/销量同期 else 0 end) 销量同比,
(case when 收入上月 <> 0 then (收入本月-收入上月)/收入上月 else 0 end) 收入环比,
(case when 收入同期 <> 0 then (收入本月-收入同期)/收入同期 else 0 end) 收入同比
from
(select
areaname 区域名称,
sum(case when stat_month = "201801" then quantity else 0 end) 销量本月,
sum(case when stat_month = "201712" then quantity else 0 end) 销量上月,
sum(case when stat_month = "201701" then quantity else 0 end) 销量同期,
sum(case when stat_month = "201801" then revenue else 0 end) 收入本月,
sum(case when stat_month = "201712" then revenue else 0 end) 收入上月,
sum(case when stat_month = "201701" then revenue else 0 end) 收入同期
from dw_car_areainfo
where brand = "奥迪"
and stat_month in ("201801","201712","201701")
group by areaname) a
结果如下:
② tableau实现
5、软件实现——车型分析
1)车型13月销量趋势分析(动态折线图)
- 这里我做了十三个月的折线图:201701—201801
- 我们做的是奥迪车型的分析,因此我们需要给车型进行筛选,同时,要将日期进行筛选。
绘制动态图过程中,有一个关键点需要注意:
最终效果如下:
2)车型销量的同比、环比分析
① sql分析
# 不同车型的销售本月、销售同期、销售上月
select
carclass 车型,
sum(case when stat_month = "201801" then quantity else 0 end) 销量本月,
sum(case when stat_month = "201701" then quantity else 0 end) 销量同期,
sum(case when stat_month = "201712" then quantity else 0 end) 销量上月
from dw_saleinfo_month
where brand = "奥迪" and stat_month in ("201801","201712","201701")
group by carclass
# 不同车型的销量本月、销量同比、销量环比
select
车型,
销量本月,
(case when 销量上月 <> 0 then (销量本月-销量上月)/销量上月 else 0 end) 销量环比,
(case when 销量同期 <> 0 then (销量本月-销量同期)/销量同期 else 0 end) 销量同比
from
(select
carclass 车型,
sum(case when stat_month = "201801" then quantity else 0 end) 销量本月,
sum(case when stat_month = "201701" then quantity else 0 end) 销量同期,
sum(case when stat_month = "201712" then quantity else 0 end) 销量上月
from dw_saleinfo_month
where brand = "奥迪" and stat_month in ("201801","201712","201701")
group by carclass) a
结果如下: