前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一文带你了解如何用SQL处理周报数据

一文带你了解如何用SQL处理周报数据

作者头像
猴子数据分析
发布2023-09-06 10:58:21
2310
发布2023-09-06 10:58:21
举报
文章被收录于专栏:猴子数据分析

【题目】

某公司数据库有三张表,周度销售表、店铺信息表、日销售明细表。

表一:周度销售表记录了每个自然周全国店铺的销售信息,字段包含了周、店铺代码、吊牌金额、销售金额。

表二:店铺信息表记录店铺所在的区域,店铺对应的层级关系及业务类型,字段包含店铺代码、区域、上级客户简称、业务类型。

表三:日销售明细表记录了每天全国不同区域的店铺销售商品的金额,客户性质及商品信息,字段包含区域、上级客户简称、上级客户代码、客户性质、店铺代码、销售日期、销售金额、商品编码。

业务需求:

1.对于不同区域、业务类型的吊牌金额、销售金额进行汇总(时间范围202201-202205周。

2.抽取区域为华东区、华中区、华西区、华南区的,并且客户性质为自营的,2022年3月及同期的日销售数据。

【解题思路】

1.对于不同区域、业务类型的吊牌金额、销售金额进行汇总(时间范围202201-202205周)

我们先来把这个业务需求翻译成大白话:

1)查询结果需要的字段是区域、业务类型、吊牌金额、销售金额

2)筛选时间周为202201-202205

3)对于不同区域、业务类型的吊牌金额、销售金额进行汇总

1)查询结果需要的字段是区域、业务类型、吊牌金额、销售金额

吊牌金额、销售金额在周度销售表中,区域、业务类型在店铺信息表中,涉及到两个表的字段,所以需要进行多表联结。

观察两个表,得知两表的名称相同且有关联的字段为店铺代码,用店铺代码联结两张表。

使用哪种联结呢?拿出《猴子 从零学会SQL》里面的多表联结图。

因为需要得到每个店铺代码对应的业务类型,所以用左连接保留周度销售表中所有的销售数据。

SQL书写如下:

代码语言:javascript
复制
select  *
from 周度销售表 a
left join 店铺信息表 b
on a.店铺代码 = b.店铺代码;

2)筛选时间周为202201-202205,使用between 函数来筛选时间范围。

SQL书写如下:

代码语言:javascript
复制
select  *
from 周度销售表 a
left join 店铺信息表 b  
on a.店铺代码 = b.店铺代码
where 周 between 202201 and 202205;

查询结果:

3)对于不同区域、业务类型的吊牌金额、销售金额进行汇总

业务需求仅显示吊牌金额和销售金额,我们使用分组汇总来对不同区域、业务类分组 (group by),对吊牌金额、销售金额进行汇总求和(求和函数sum)

SQL书写如下:

代码语言:javascript
复制
select 区域,
            业务类型,
            sum(a.吊牌金额) AS "总吊牌金额",
            sum(a.销售金额) AS "总销售金额"
from 周度销售表 a
left join 店铺信息表 b
on a.店铺代码 = b.店铺代码
where 周 between 202201 and 202205
group by 业务类型,区域;

查询结果:

2、抽取区域为华东区、华中区、华西区、华南区的,并且客户性质为自营的,2022年3月及同期的日销售数据。

需求显示字段区域、客户性质、销售日期,日销售明细表都包含,现在只需要将客户性质为“自营”和时间为2022年3月及2021年3月(同期)数据显示即可。

SQL中使用date_format将日销售表中的销售日期格式设置为年月格式。

SQL书写如下:

代码语言:javascript
复制
select   *
from 日销售明细表
where  区域 in (
              "华东区",
              "华中区",
              "华西区",
              "华南区" )
and 客户性质 = "自营"
and date_format(销售日期, '%Y-%m') between "2021-03" and "2022-03";

查询结果:

【本题考点】

1.业务需求拆解为一个个问题,试着翻译成大白话,根据需求找出连接与突破点。

2.SQL中最常见的几种联结应该如何使用,学习参考猴子免费教程《图解SQL面试题》。

3.数据表中日期格式如果不是我们想要的呈现结果,学会date_format函数进行转化。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 猴子数据分析 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档