前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每天一道大厂SQL题【Day03】订单量统计

每天一道大厂SQL题【Day03】订单量统计

作者头像
Maynor
发布2023-02-17 11:08:16
3700
发布2023-02-17 11:08:16
举报

每天一道大厂SQL题【Day03】订单量统计

大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据选手,深知SQL重要性,接下来我准备用100天时间,基于大数据岗面试中的经典SQL题,以每日1题的形式,带你过一遍热门SQL题并给出恰如其分的解答。

一路走来,随着问题加深,发现不会的也愈来愈多。但底气着实足了不少,相信不少朋友和我一样,日积月累才是最有效的学习方式!

第3题:订单量统计

需求

已知一个表STG.ORDER,有如下字段:Date,Order_id,User_id,amount。 数据样例:2017-01-01,10029028,1000003251,33.57。

请给出sql进行统计:

(1) 给出 2017年每个月的订单数、用户数、总成交金额。 (2)给出2017年11月的新客数(指在11月才有第一笔订单)

实现?

数据准备

代码语言:javascript
复制
CREATE TABLE test_sql.test3 (
dt string, order_id string, user_id string,
amount DECIMAL ( 10, 2 ) ) ROW format delimited FIELDS TERMINATED BY '\t';

INSERT INTO TABLE test_sql.test3 VALUES ('2017-01-01','10029028','1000003251',33.57); INSERT INTO TABLE test_sql.test3 VALUES ('2017-01-01','10029029','1000003251',33.57); INSERT INTO TABLE test_sql.test3 VALUES ('2017-01-01','100290288','1000003252',33.57); INSERT INTO TABLE test_sql.test3 VALUES ('2017-02-02','10029088','1000003251',33.57); INSERT INTO TABLE test_sql.test3 VALUES ('2017-02-02','100290281','1000003251',33.57); INSERT INTO TABLE test_sql.test3 VALUES ('2017-02-02','100290282','1000003253',33.57); INSERT INTO TABLE test_sql.test3 VALUES ('2017-11-02','10290282','100003253',234); INSERT INTO TABLE test_sql.test3 VALUES ('2018-11-02','10290284','100003243',234);

思路分析

–(1)给出 2017年每个月的订单数、用户数、总成交金额。 –先通过日期字段 “Date” 进行分组,将每个月的数据分别分组。 –对每个分组,统计订单数(count(Order_id))、用户数(count(distinct User_id))、总成交金额(sum(amount))。 –筛选日期为2017年的数据。 –将统计结果按月份进行排序。

–(2)给出2017年11月的新客数(指在11月才有第一笔订单) –先通过日期字段筛选出2017年11月的订单记录。 –对于每个用户ID,检查是否存在在2017年11月之前的订单记录。 –如果不存在,说明该用户是在2017年11月才有第一笔订单,累加新客数。 –最终统计新客数。

答案获取

建议你先动脑思考,动手写一写再对照看下答案 参考答案适用HQL,SparkSQL,FlinkSQL,即大数据组件,其他SQL需自行修改。

后记

📢博客主页:https://manor.blog.csdn.net 📢本文由 Maynor 原创,首发于 CSDN博客🙉 📢不能老盯着手机屏幕,要不时地抬起头,看看老板的位置⭐ 📢专栏持续更新,欢迎订阅:https://blog.csdn.net/xianyu120/category_12182595.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-02-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 每天一道大厂SQL题【Day03】订单量统计
    • 第3题:订单量统计
      • 需求
      • 数据准备
    • 思路分析
      • 答案获取
        • 后记
        相关产品与服务
        大数据
        全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档