题解 | #某宝店铺动销率与售罄率#

某宝店铺动销率与售罄率

https://www.nowcoder.com/practice/715dd44c994f45cb871afa98f1b77538

with
    skuList as (
        select
            style_id,
            round(sum(sales_num)*100/(avg(allinv) - sum(sales_num)),2) `pin_rate(%)`,
            round(sum(sales_price)*100/avg(allcost),2) `sell-through_rate(%)`
        from
            sales_tb
            join 
            (
                select 
                    style_id,
                    sum(inventory) allinv, #根据styleid求出每个spu的总的库存
                    sum(tag_price*inventory) allcost # 根据 style_id求出每个spu的总成本
                from product_tb
                group by 
                style_id
            ) t1 
            where substr(sales_tb.item_id,1,1) = t1.style_id #将总成本和总的库存绑定到每个sku中,这样做聚类可以用avg聚合函数求出每个spu的总库存和总成本了。
        group by 
            style_id
    )
select * from skuList

本体的难度在于不能直接连接2个表做汇总,因为求总库存只能依据product_tb 中的唯一数据来做汇总。

除了我上面的代码,也可以先把sales_tb 表做每个item_id聚合汇总后求出每个item_id对应的总售卖量和总售卖价格,与product_tb连接后就可以根据style_id分类求出相关数据。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务