题解 | #10月的新户客单价和获客成本#

10月的新户客单价和获客成本

https://www.nowcoder.com/practice/d15ee0798e884f829ae8bd27e10f0d64

# 商城里所有新用户的首单平均交易金额(客单价)和平均获客成本(平均优惠价)。
# 新用户的定义?之前(10月份前)没有出现过的uid
# 字段:客单价 / 平均获客成本

# 表一:聚合订单明细表
with table1 as (
    select order_id,sum(price*cnt) as  pre_cost
    from tb_order_detail
    group by order_id
),

# 表二:连接 订单总表 & 新用户筛选
table2 AS(
    select event_time,order_id,uid,total_amount,
    row_number()OVER(partition by uid order by event_time asc) as rk,
    # COALESCE(pre_cost, 0) - total_amount AS cost
    (pre_cost - total_amount) as cost
    from tb_order_overall left join table1 using(order_id)
    where uid not in(select uid from tb_order_overall where date(event_time)<'2021-10-01') AND status = 1 

)


# 计算客单价 & 平均获客成本
select ROUND(sum(total_amount)/count(distinct order_id),1) AS avg_amount,
ROUND(sum(cost)/COUNT(DISTINCT order_id),1) AS avg_cost
FROM table2
WHERE YEAR(event_time) = 2021 AND MONTH(event_time) = 10 AND rk = 1


# 注意点:计算客单价的时候不能用avg,而是sum/count
# 注意点:首单! 需要先对table2中的数据进行uid分组,时间排序。。。rk = 1

全部评论

相关推荐

码农索隆:有点耳熟,你们是我教过最差的一届
点赞 评论 收藏
分享
Twilight_m...:表格简历有点难绷。说说个人看法: 1.个人基本情况里好多无意义信息,什么婚姻状况、健康状况、兴趣爱好、户口所在地、身份证号码、邮政编码,不知道的以为你填什么申请表呢。 2.校内实践个人认为对找工作几乎没帮助,建议换成和测开有关的项目,实在没得写留着也行。 3.工作经历完全看不出来是干什么的,起码看着和计算机没啥关系,建议加强描述,写点你在工作期间的实际产出、解决了什么问题。 4.个人简述大而空,看着像AI生成,感觉问题最大。“Python,C,C++成为我打造高效稳定服务的得力工具”、“我渴望凭借自身技术知识与创新能力,推动人工智能技术的应用发展,助力社会实现智能化转型”有种小学作文的美感。而且你确定你个人简述里写的你都会嘛?你AI这块写的什么“深入研究”,发几篇顶会的硕博生都不一定敢这么写。而且你AI这块的能力和软测也完全无关啊。个人简述建议写你对哪些技术栈、哪些语言、哪些生产工具的掌握,写的有条理些,而且最好是和测开强相关的。
点赞 评论 收藏
分享
Twilight_m...:经典我朋友XXXX起手,这是那种经典的不知道目前行情搁那儿胡编乱造瞎指导的中年人,不用理这种**
点赞 评论 收藏
分享
练习生懒羊羊:开飞机把这个公司创飞吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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