电商项目之用户交易宽表 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

相关文章
|
9月前
|
算法 数据挖掘 数据库
通过 SQL 快速使用 OceanBase 向量检索学习笔记
通过 SQL 快速使用 OceanBase 向量检索学习笔记
|
9月前
|
SQL 数据库
SQL 学习笔记 - 多表关系与多表查询
数据库多表关系包括一对多、多对多和一对一,常用外键关联。多表查询方式有隐式/显式内连接、外连接、子查询等,支持别名和条件筛选。子查询分为标量、列、行、表子查询,常用于复杂查询场景。
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(1)——表中数据的整删改查
简简单单 My SQL 学习笔记(1)——表中数据的整删改查
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(3)——连接和嵌套查询
简简单单 My SQL 学习笔记(3)——连接和嵌套查询
|
SQL HIVE UED
【Hive SQL 每日一题】分析电商平台的用户行为和订单数据
作为一名数据分析师,你需要分析电商平台的用户行为和订单数据。你有三张表:`users`(用户信息),`orders`(订单信息)和`order_items`(订单商品信息)。任务包括计算用户总订单金额和数量,按月统计订单,找出最常购买的商品,找到平均每月最高订单金额和数量的用户,以及分析高消费用户群体的年龄和性别分布。通过SQL查询,你可以实现这些分析,例如使用`GROUP BY`、`JOIN`和窗口函数来排序和排名。
1527 2
|
SQL 机器学习/深度学习 算法
SQL SERVER ANALYSIS SERVICES决策树、聚类、关联规则挖掘分析电商购物网站的用户行为数据
SQL SERVER ANALYSIS SERVICES决策树、聚类、关联规则挖掘分析电商购物网站的用户行为数据
|
SQL OLAP Serverless
第五章:SQL高级处理---SQL学习笔记
第五章:SQL高级处理---SQL学习笔记
187 0
|
SQL 关系型数据库 索引
PL/SQL学习笔记(索引贴)
我前段时间写了T-SQL学习笔记得到了许多朋友的支持当然也有一些朋友提出了质疑,在此一并表示感谢最近项目中用到Oracle,于是萌生了写PL/SQL学习笔记的念头。同时也希望得到大家的支持或批评。并非常希望能和朋友们一起讨论相关知识。
1322 0
|
SQL 算法 数据库
PL/SQL学习笔记-索引
一:索引描述一个索引可以由一个或多个列组成对列设置索引其实就是对列的内容按一定的方式进行排序检索数据的时候,检索排过序的数据检索到最后一个有效数据之后就跳出检索这样就不必进行全表扫描了,同时可以应用很多算法提高检索效率数据库多用二分法检索数据二:索引分类1  唯一索引(Unique)不允许列内有重复...
968 0