文末扫码领取资料

【某招聘网站数据表】

本篇文章主要是通过两家超市真实的数据来展示SQL在实战中如何应用,感兴趣的小伙伴可以扫码领取学习资料进行实操练习。

业务背景介绍

项目的实战背景是二家超市的真实数据,数据时间段是从 20160101 到 20171231。

主要表字段说明:

超市的主要商业场景:

1. 进来的商品销售给顾客,要让进来的商品顾客愿意购买。所以对于顾客不愿意购买的商品要及时进行淘汰、下架,或者退还供应商和打折销售掉。如果卖不掉,超市是不是就把进货成本都亏损了,例如:进了 20 件坚果,如果进货 20 元,都卖不掉也退不了货那超市就白白损失了:400 元!

2. 所有超市的经营者,定期都需要通过数行监控,不断看每天哪些商品有在卖?哪些商品没有在卖?在每个月的时候,一定会复盘,在过去一个月里面有多少商品有产生过销售,每件有哪几天在产生销售。

思考以下问题

  • 如果过去一个月,某些商品没有一天产生销售,或者就是一二天产生销售,如果你是超市的经营者,你会怎么做呢?

  • 动销率可以用来衡量什么?
  • 目标:理解简单的数据统计指标背后的商业应用背景及商业逻辑,思考数据是如何指导运营的。

需 求

销售数据统计指标:统计 2017 年 8 月,有多少商品销售的天数超过 1 天,2 天,3 天,……31 天的,查看商品的动销情况。

说明:

  • 商品:即SKU,可以理解为一件商品,也就是我们表中的 GoodsID,暂时不考虑购买量以及购买金额。
  • 销售的天数是指:某天这个商品在这天产生过订单
  • 销率=有销售的 SKU 数/在销售的 SKU 数;例如:8 月 1 号,有过销售记录的 SKU 有 100 件,整个超市地 200 件商品在货架上可以卖,则这天的动销率为50%。

逻辑分析

  • 时间范围:2017 年 8 月份,说明需要日期字段,时间粒度是为:天。
  • 统计商品销售,那就涉及:商品编辑,商品的销售产生的订单

  • 首先,统计每个商品在这个月里面有多少天产生了被购买过的记录数。

  • 然后,再基于查询的结果:再按日期来数据统计,只产生过 1 天,2 天,。。。31 天销售记录商品数分别多少。

代码实现过程

SELECT sale_days ,COUNT(DISTINCT GoodsID) AS goods_qty # 统计不同天数有销售商品数量FROM(SELECT GoodsID ,COUNT(DISTINCT SDate) AS sale_days #统计每种商品各有多少在有销售 FROM OrderItem WHERE SDate BETWEEN '20170801' AND '20170831' GROUP BY GoodsID ORDER BY sale_days) AS tGROUP BY sale_daysORDER BY sale_days DESC;

假设,我们想看下201708每天的动销率该如何查看呢?

逻辑分析:

  • 所有商品,也就是GoodsID在Goods表中

  • 总的在售商品数需要反复使用,所以使用定义变量

  • 在OrderItem表按照日期分组统计不同商品数量,得到每日有销售记录的商品数量

  • 汇总数据得到显示样式为:日期——有销售商品数量——动销率。

SELECT SDate ,sale_quantity AS 有销售的数量 ,CONCAT(ROUND(sale_quantity/@total_quantity * 100,2),"%") AS '动销率'FROM(SELECT SDate ,COUNT(DISTINCT GoodsID) AS sale_quantity FROM OrderItem WHERE SDate BETWEEN '20170801' AND '20170831' GROUP BY SDate) AS t1JOIN (SELECT @total_quantity := (SELECT COUNT(DISTINCT GoodsID) FROM Goods)) AS t2;

201708每日动销率

后续其实可以做个折线趋势图,看下当月不同日期动销率的变化情况,如果有业务需要的话。这里主要是SQL的运用,不做过多分析。

End.

作者:对三选手

来源:简书

扫描海报上二维码添加客服

领取【某招聘网站数据表】

零基础入职数据分析就业班

课程的形式主要是“直播+录播”

报名专享:课程项目作业+1v1班主任监督学习+爱数据学院学员专属网站+班级答疑群

课程结束后能熟练掌握SQL、Python、Excel、PPT等工具

适合人群:

1.转行(岗位相关,专业相关、对数据分析感兴趣)

2.从事数据分析工作,但是需要提升技能以及增加实战经验

3.应届毕业生入职数据分析

select 统计数量_SQL应用实战 | 销售数据统计指标相关推荐

  1. select 统计数量_leetcode题库-sql练习精讲系列--十三、简单分组统计类问题

    这是一个系列文章,这个系列的理念是通过一道题,搞懂一类题.涵盖了SQL面试最常考的知识点.搞懂这些题,面试时工作中sql不可能有问题. 文章分为引入问题-完整解析-答案-leetcode题和答案-知识 ...

  2. java统计大于0的个数_java中0的问题(依据0统计数量时出错)

    大侠们: 我使用sql语句和后台程序代码统计航班数量,如果依据大于等于1的值做统计,他们两个得出的结果是一样的:如果依据0做统计,结果是不一样,谁知道怎么回事(0不是除数)?先谢谢各位了... 问题是 ...

  3. sql将数据按照年月日分组并统计数量

    直接给个例子: SELECT DATE_FORMAT(releaseDate,"%Y年%m月") AS dates,COUNT(*) FROM some_table GROUP B ...

  4. mysql统计数量函数方法_mySql关于统计数量的SQL查询操作

    mySql关于统计数量的SQL查询操作,状态,订单,语句,函数,数量 mySql关于统计数量的SQL查询操作 易采站长站,站长之家为您整理了mySql关于统计数量的SQL查询操作的相关内容. 我就废话 ...

  5. Oracle中的统计数量

    1.按天.月.周.年统计数据量 --统计数量by day, EVENTTIME:2020-10-13 16:51:58WITH AA AS (SELECT A.* FROM LOT_MULTIHOLD ...

  6. MySQL 中查询统计数量

    在MySQL中统计数量用到的函数是 count() 同时我也会用到分组查询关键字 group by .having 例子:emp_no为主键 请你查找薪水记录超过15次的员工号emp_no以及其对应的 ...

  7. mysql四表统计数量:统计中国各个省份安装企业站点数量

    [求助]四表统计数量:统计中国各个省份安装企业站点数量 需要实现的效果 表结构 怎么才能得到????如下 正解 需要实现的效果 表结构 # 地区表 CREATE TABLE `sys_region` ...

  8. python读取大文件目录_Python读取系统文件夹内所有文件并统计数量的方法

    大家先看一下Python os模块中的部分函数 python 路径相关的函数 os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os. ...

  9. R语言统计代码运行耗时实战:计算代码运行时间、使用proc.time函数计算代码运行时间

    R语言统计代码运行耗时实战:计算代码运行时间.使用proc.time函数计算代码运行时间 目录

最新文章

  1. oracle 手动批处理,Oracle 简单备份 批处理(BAT)
  2. NC:潮湿的墙体和家具中微生物迅速增长!
  3. KubeCon 改为线上举办 | 云原生生态周报 Vol. 48
  4. boost::hana::range_c用法的测试程序
  5. Android安卓模拟器中模拟SD卡
  6. 常用的函数式接口_Consumer接口的默认方法andThen
  7. 调整linux块大小,Linux系统之更改默认块大小
  8. Photoshop gif索引解锁及颜色失真问题
  9. 漫画小程序支持流量主,自动采集资源,漫画源码漫画小程序源码简单即可发布
  10. 游戏开发——表情系统
  11. 世界主要的11种气候类型特点及分布
  12. 2019蓝桥杯本科B组C-C++决赛题 (题解随后出)
  13. 计算机工作组环境和域环境的区别
  14. 歌单详情内容-图标列表 (音乐app项目-第7步)
  15. GraalVM - 云原生时代的 Java 笔记
  16. php调用相册其他的图片代码,远程调用163网易相册的代码PHP版本
  17. CSS属性display的用法 display=
  18. C语言控制台简易计算器程序
  19. 【C4D基础】导入图片、选择工具、线性切割、显示与渲染、旋转
  20. Linux基础学习(Ubuntu)

热门文章

  1. @程序员,欠下的技术债怎么还?
  2. JavaScript 简史:从网景到框架 | 技术头条
  3. IoT 时代,安全危机爆发
  4. 移动开发或将被颠覆?
  5. 一封遗失信件成就的科技亿万富翁
  6. 12 月 Web 服务器调查:“王者” nginx 增长最快!
  7. 程序员如何处理被 “吃” 掉的异常?
  8. 腾讯生死年 | 畅言
  9. 分析了 Stack Overflow、Reddit 等 9 个榜单,Python 第一的地位稳了!
  10. mysql多表查询取出最后的数据_数据库多表查询,如何取A表中最后一个数据在B表中进行查找?...