#博学谷IT技术支持#
一、概念
数据集市Data Market分主题存放所有的有价值的维度和指标的组合,等待需求者从集市中挑选想要的组合。
二、实现
2.1 销售主题宽表
2.1.1 需求
对DWS层的销售主题宽表进行上卷得出天+分类维度,月+分类维度,周+分类维度,年+分类维度。
指标
销售收入、平台收入、配送成交额、小程序成交额、安卓APP成交额、苹果APP成交额、PC商城成交额、订单量、参评单量、差评单量、配送单量、退款单量、小程序订单量、安卓APP订单量、苹果APP订单量、PC商城订单量
维度
天(已经统计过),周,月,年
城市
商圈
店铺
品牌
大类、中类、小类日期
日期+城市
日期+城市+商圈
日期+城市+商圈+店铺
日期+品牌
日期+大类
日期+大类+中类
日期+大类+中列+小类
2.1.2 目标表创建
create table dm_sale{
-- 时间维度:天 、月、周、年
time_type:month
-- 分类维度:城市、商圈、店铺,品牌、大类、中类、小类
group_type:city
-- 指标
总销售额
}
2.1.3 步骤
- 将dws销售表和日期维度表关联,抽取日期维度表中的年、年月、月份、天、日期、年中第几周
- 使用grouping sets实现维度组合
- 在每一个维度组合中进行sum
2.1.4 代码
grouping sets (
-- 天相关的统计
-- 2021 05 30 2021-05-30
(year_code,month_code,day_month_num,dim_date_id),
(year_code,month_code,day_month_num,dim_date_id,city_id,city_name),
(year_code,month_code,day_month_num,dim_date_id,city_id,city_name,trade_area_id,trade_area_name),
(year_code,month_code,day_month_num,dim_date_id,city_id,city_name,trade_area_id,trade_area_name,store_id,store_name),
(year_code,month_code,day_month_num,dim_date_id,brand_id,brand_name),
(year_code,month_code,day_month