题解 | 最畅销的SKU

最畅销的SKU

https://www.nowcoder.com/practice/356a64a402864b27a9ab47d0c032756d

with a1 as (
    select c.store_id,c.sku_id,sum(qty) as last7d_qty
    from sales_daily_ c 
    join store_stock_ b 
    on b.store_id = c.store_id and b.sku_id = c.sku_id
    where datediff(snapshot_date,sale_date) between 0 and 6
    group by c.store_id,c.sku_id #0无记录
),

a2 as (
	select 
	b.store_id,
	store_name,
	city,
	b.sku_id,
	round(coalesce(last7d_qty,0),0) as last7d_qty,
	round(coalesce(last7d_qty,0.00)/7,2) as avg_daily_qty,
	stock_qty,
	ROUND(stock_qty/(round(coalesce(last7d_qty,0.00)/7,2)),1) as coverage_days,
	ROW_NUMBER() over(partition by b.store_id order by last7d_qty DESC, sku_id ASC) as rank_in_store
	from store_stock_ b 
	left join a1 
	on b.store_id = a1.store_id and b.sku_id = a1.sku_id
	join store_info_ a on b.store_id=a.store_id
	order by b.store_id,rank_in_store)

select 
store_id,
store_name,
city,
sku_id,
last7d_qty,
avg_daily_qty,
stock_qty,
coverage_days,
rank_in_store
from a2
where rank_in_store<4

全部评论

相关推荐

李橙子:结果虽不够理想,但过程本身已是宝贵的淬炼。能把学习机会放在薪酬之前,证明你目光长远。先踏实进去,用这段时间扎实学好Python后端,把公司项目吃透,你的价值会在下一份工作中完全体现。这个起点,值得。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务