-- 作者:tianyu.chu -- 日期:2026-05-10 -- 工单:(无) -- 目的:用户 x 品类 x 日 交易主题宽表(kb/29 §2 dws_usr_user_trade_1d) -- 状态:[草案] -- 备注:粒度 (user_id, category, dt) 唯一(kb/29 §2.2); -- 来源 dwd_trd_order_pay_apd_d 单源(A3 锁定 1 期不做 refund,kb/29 §2.3); -- dt 锚点 = DATE(payment_success_time) 业务时间分区,承袭 dwd(kb/29 §2.4); -- 回算 N=2 与 dwd 对齐(漂移连锁补偿,kb/93 ADR-09); -- 不冗余维度退化字段(1 期 scope 服务标签计算,kb/29 §1.3 触发条件再扩); -- 字段类型对齐 dwd(整数 BIGINT,金额 DECIMAL(20,4),kb/20 §8.4.1) DROP TABLE IF EXISTS dws.dws_usr_user_trade_1d; CREATE EXTERNAL TABLE IF NOT EXISTS dws.dws_usr_user_trade_1d ( user_id BIGINT COMMENT '用户 id (PK 一,源 dwd.user_id)', category STRING COMMENT '叶子品类 (PK 二,源 dwd.category,DIM 已清洗权威源)', pay_order_cnt BIGINT COMMENT '当日支付订单数 偏好次数口径 COUNT(DISTINCT order_id)', purchase_cnt BIGINT COMMENT '当日支付份数 备用 SUM(purchase_cnt)', payable_amt_cny DECIMAL(20,4) COMMENT '当日 GMV SUM(payable_amt_cny)', pay_amt_cny DECIMAL(20,4) COMMENT '当日 Net Revenue 偏好金额口径 SUM(pay_amt_cny)', trade_amt_cny DECIMAL(20,4) COMMENT '当日订单交易金额 SUM(trade_amt_cny)', settle_amt_cny DECIMAL(20,4) COMMENT '当日结算金额 SUM(settle_amt_cny)', merchant_discount_amt_cny DECIMAL(20,4) COMMENT '当日商家折扣 SUM(merchant_discount_amt_cny)', platform_discount_amt_cny DECIMAL(20,4) COMMENT '当日平台券折扣 SUM(platform_discount_amt_cny)', member_discount_amt_cny DECIMAL(20,4) COMMENT '当日会员折扣 SUM(member_discount_amt_cny)', act_discount_amt_cny DECIMAL(20,4) COMMENT '当日活动折扣 SUM(act_discount_amt_cny)', point_deduct_amt_cny DECIMAL(20,4) COMMENT '当日积分抵扣金额 SUM(point_deduct_amt_cny)', shipping_amt_cny DECIMAL(20,4) COMMENT '当日运费 SUM(shipping_amt_cny)', point BIGINT COMMENT '当日消耗积分 SUM(point)', etl_time TIMESTAMP COMMENT 'ETL 处理时间' ) COMMENT '用户 x 品类 x 日 交易主题宽表' PARTITIONED BY (dt STRING) STORED AS ORC LOCATION '/user/hive/warehouse/dws.db/dws_usr_user_trade_1d';