【SQL刷题】某宝各项指标计算

本文主要探讨了如何通过SQL查询进行电商数据分析,包括统计SPU的数量、计算销售额和客单价、折扣率、动销率和售罄率,以及识别连续购物用户。通过一系列SQL语句,提供了对商品销售和用户行为的深入洞察。
摘要由CSDN通过智能技术生成

在这里插入图片描述

问题

问题1、统计每款的SPU(货号)数量,并按SPU数量降序排序;
问题2、统计实际总销售额客单价(结果保留两位小数);
问题3、统计折扣率(GMV/吊牌金额,GMV指的是成交金额。折扣率保留两位小数);
问题4、统计每款的动销率(pin_rate,有销售的SKU数量/在售SKU数量)与售罄率(sell-through_rate,GMV/备货值,备货值=吊牌价*库存数),按style_id升序排序;
问题5连续2天及以上在该店铺购物的用户及其对应的次数(若有多个用户,按user_id升序排序)。

题解

问题1

电商SPU是指商品信息聚合的最小单位,属性值、特性相同的商品就可以称为一个SPU。

步骤来源
SELECT款号,count(库存量) SPU
FROM产品情况表
GROUP BY款号
ORDER BYSPU

问题2

客单价是人均付费,等于总收入/总用户数。

步骤来源
SELECTsum(结算金额),round(sum(结算金额)/count(distinct 用户id,2))
FROM销售数据表

问题3

步骤来源
SELECTsum(结算金额)/sum(标签价格*销售数量)[结合round函数]
FROM销售数据表,产品情况表 using (货号)

问题4
销售表同个货号有多笔记录,需要先对销售表汇总再sum。

步骤来源
SELECT款号,
sum(cnt)/(sum(库存)-sum(cnt)),
sum(amount)/sum(标签价格)*sum(库存)
FROM(select 货号,sum(销售数量)cnt,sum(结算金额)amount from 产品情况表 group by 货号)
产品情况表
GROUP BY款号
ORDER BY款号

问题5
r_k:row_number() over(partition by 用户id order by 销售日期) 。
连续:日期减去按照用户分组、日期排序的次序数是相等的。

步骤来源
SELECT用户id,count(start_date) days_count
FROM(select 用户id,销售日期,date_sub(销售日期,interval r_k day)start_date from 销售数据表)T
GROUP BY用户id,start_date
HAVINGdays_count > 1
ORDER BY用户id

感受

这组题难度不大,有些指标的计算可能跟实际要求是不符合的,练手可以。问题4和问题5不错。

当然,我可以为您介绍一下 SQL Server 刷题的相关内容。SQL Server 是一种关系型数据库管理系统,用于存储和管理大量结构化数据。在刷题过程中,您可以通过解决一系列与 SQL Server 相关的问题来提高对其的理解和应用能力。 以下是一些常见的 SQL Server 刷题方向和相关问题: 1. SQL 基础知识: - 什么是 SQL Server?它有哪些特点和优势? - SQL Server 中的数据类型有哪些?它们分别用于存储什么类型的数据? - 如何创建数据库和表格? - 如何插入、更新和删除数据? - 如何使用 SELECT 语句查询数据? 2. 数据查询与筛 - 如何使用 WHERE 子句进行条件选? - 如何使用 ORDER BY 子句对查询结果进行排序? - 如何使用 GROUP BY 子句进行分组聚合操作? - 如何使用 HAVING 子句进行条件筛选(针对分组后的结果)? . 数据操作与修改: - 如何使用 UPDATE 语句修改表格中的数据? - 如何使用 DELETE 语句删除表格中的数据? - 如何使用 INSERT INTO 语句插入新的数据? 4. 数据连接与联结: - 如何使用 JOIN 连接多个表格? - 什么是内连接、外连接和交叉连接? - 如何使用子查询进行复杂的数据查询? 5. 数据聚合与统计: - 如何使用聚合函数(如 SUM、AVG、COUNT、MAX、MIN)进行数据统计? - 如何使用 GROUP BY 子句进行分组统计? - 如何使用 HAVING 子句进行条件筛选(针对分组后的统计结果)? 这些问题只是 SQL Server 刷题中的一部分,您可以根据自己的需求和水平选择适合的题目进行练习。同时,还可以参考 SQL Server 官方文档、教程和在线资源来深入学习和提高技能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值