电商项目之用户交易宽表 SQL 实现|学习笔记

简介: 快速学习电商项目之用户交易宽表 SQL 实现

开发者学堂课程【新电商大数据平台2020最新课程电商项目之用户交易宽表 SQL 实现】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/640/detail/10546


电商项目之用户交易宽表 SQL 实现

 

SQL 实现用户交易宽表

使用 SQL 来实现

输入代码

with tborder as(

select

from dwd_nshop.dwd_nshop_orders_details o

//form 后写用户基本信息表

join ods_nshop.ods_02_customer c

//然后 join 后写 customer 表

on o.customer_id=c.customer_id

//on 后加入条件两个 customer 的 id 相等

where

bdp_day= ‘20200321’

)

然后来增加值,在用户交易宽表中我们需要的值有用户 id、所在区域、订单数量、订单金额等等。

写入值:

with tborder as(

select

o.order_id,

o.district_money,

o.shipping_money,

o.payment_money,

c.customer_id,

c.customer_natives

from dwd_nshop.dwd_nshop_orders_details o

//form 后写用户基本信息表

join ods_nshop.ods_02_customer c

//然后 join 后写 customer 表

on o.customer_id=c.customer_id

//on 后加入条件两个 customer 的 id 相等

where

bdp_day= ‘20200321’

)

先来查询,看是否可以查到

输入 limit 10

image.png

结果存在

取到相应的值后,接着将值进行汇总,继续输入

select

customer_id,     //id

customer_natives,    //所在区域

count(order_id) over (partition by customer_id) as orders_count,  

sum(payment_money) over (partition by customer_id) as orders_pay,

sum(shipping_money) over (partition by customer_id) as orders_shipping,

sum(district_money) over (partition by customer_id) as orders_district,

current_timestamp() as ct   //生成时间使用获取系统时间

from tborder

之后再来查询,输入 limit 10

结果如下

image.png

数据处理完成后,再来插入

insert overwrite table dws_nshop.dws_nshop_usr_orders partition(bdp_day= ‘20200321’)

以上就全部整理了用户交易宽表,此外在聚合时要注意所求的 order 或者是金额都是针对用户来讲,所以必须按照customer_id 进行分组。

再来观察浏览器

image.png

点击 dws_nshop_user_orders,再点击 bdp_dav=20200321。

image.png

相关文章
|
SQL 大数据 HIVE
每天一道大厂SQL题【Day06】电商购买金额统计实战
每天一道大厂SQL题【Day06】电商购买金额统计实战
222 0
|
SQL 关系型数据库 MySQL
项目中遇到一张900w的数据表把原先要花费17s执行的SQL优化到300ms经验加100哈哈哈
项目中遇到一张900w的数据表把原先要花费17s执行的SQL优化到300ms经验加100哈哈哈
190 1
|
SQL 大数据 HIVE
每天一道大厂SQL题【Day10】电商分组TopK实战
每天一道大厂SQL题【Day10】电商分组TopK实战
152 0
|
SQL Java 应用服务中间件
Java项目防止SQL注入的四种方案
Java项目防止SQL注入的四种方案
962 0
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之新建项目的元数据的sql报错,如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
215 0
|
SQL 关系型数据库 MySQL
Go语言项目高效对接SQL数据库:实践技巧与方法
在Go语言项目中,与SQL数据库进行对接是一项基础且重要的任务
352 11
|
SQL 存储 数据可视化
【开源项目推荐】通用SQL数据血缘分析工具——Sqllineage
【开源项目推荐】通用SQL数据血缘分析工具——Sqllineage
1868 57
|
SQL 自然语言处理 数据挖掘
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
|
监控 Java 开发者
揭秘Struts 2性能监控:选对工具与方法,让你的应用跑得更快,赢在起跑线上!
【8月更文挑战第31天】在企业级应用开发中,性能监控对系统的稳定运行至关重要。针对流行的Java EE框架Struts 2,本文探讨了性能监控的工具与方法,包括商用的JProfiler、免费的VisualVM以及Struts 2自带的性能监控插件。通过示例代码展示了如何在实际项目中实施这些监控手段,帮助开发者发现和解决性能瓶颈,确保应用在高并发、高负载环境下稳定运行。选择合适的监控工具需综合考虑项目需求、成本、易用性和可扩展性等因素。
317 0
|
SQL HIVE UED
【Hive SQL 每日一题】分析电商平台的用户行为和订单数据
作为一名数据分析师,你需要分析电商平台的用户行为和订单数据。你有三张表:`users`(用户信息),`orders`(订单信息)和`order_items`(订单商品信息)。任务包括计算用户总订单金额和数量,按月统计订单,找出最常购买的商品,找到平均每月最高订单金额和数量的用户,以及分析高消费用户群体的年龄和性别分布。通过SQL查询,你可以实现这些分析,例如使用`GROUP BY`、`JOIN`和窗口函数来排序和排名。
1420 2

热门文章

最新文章

下一篇
开通oss服务