2022转转秋招数据分析sql(1)商品排名前三

查找每个城市商品利润前三的商品及其信息!
题目信息如下:
table_name:t_order
columns:
city_name–城市名称
order_id–订单号
goods_code–商品编码
goods_name–商品名称
order_status–订单状态:0–未完成,1–已完成
product_price–商品金额
product_pay_price–实收金额
cost_price–商品成本

输出信息如下:
输出各城市利润额排名前三的商品,并输出对应的订单数与利润率
利润率=成本/实收(题目里是这么给的,但我算的是利润/成本)
输出city_name,goods_name,rn,order_num,profit,profit_rate

# step3
select * from (
# step2
select 
city_name
,goods_name
,row_number() over(partition by city_name order by profit desc) as rn # 按总利润计算商品利润额降序
,order_num
,profit
,profit/cost_price_sum as profit_rate # 利润率=总利润/总成本
from(
# step1
select 
city_name
,goods_name
,count(*) as order_num # 计算成交单数
,sum(cost_price)  as cost_price_sum # 计算总成本
,sum(product_pay_price-cost_price)  as profit # 计算总利润
from t_order 
where order_status=1 # 订单状态为1---已完成
group by city_name,goods_name # 这里使用group by可以确保每个商品仅保留一条信息
	) a 
				) a
where rn in (1,2,3) # 查找排名前三的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值