98 lines
4.6 KiB
MySQL
98 lines
4.6 KiB
MySQL
|
|
-- Phase 4: 商品与会员洞察 (ADM数据市集层)
|
||
|
|
|
||
|
|
-- ==========================================
|
||
|
|
-- 会员洞察 (Customer Insights)
|
||
|
|
-- ==========================================
|
||
|
|
|
||
|
|
-- 1. 客户 RFM 与评分模型表
|
||
|
|
CREATE TABLE IF NOT EXISTS `adm_customer_rfm` (
|
||
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '自增主键',
|
||
|
|
`yz_open_id` VARCHAR(64) NOT NULL COMMENT '有赞open_id',
|
||
|
|
`mobile` VARCHAR(32) DEFAULT NULL COMMENT '客户手机号',
|
||
|
|
|
||
|
|
`last_trade_time` DATETIME DEFAULT NULL COMMENT '最近一次消费时间 (Recency)',
|
||
|
|
`trade_count_90d` INT DEFAULT 0 COMMENT '近90天消费频次 (Frequency)',
|
||
|
|
`trade_amount_90d` DECIMAL(12, 2) DEFAULT 0.00 COMMENT '近90天消费金额 (Monetary)',
|
||
|
|
|
||
|
|
`r_score` INT DEFAULT 0 COMMENT 'R得分(1-5级)',
|
||
|
|
`f_score` INT DEFAULT 0 COMMENT 'F得分(1-5级)',
|
||
|
|
`m_score` INT DEFAULT 0 COMMENT 'M得分(1-5级)',
|
||
|
|
|
||
|
|
`rfm_group` VARCHAR(32) DEFAULT NULL COMMENT '客群分层(例如: 重要价值客户/沉睡客户等)',
|
||
|
|
|
||
|
|
`etl_update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '同步更新时间',
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
UNIQUE KEY `uk_yz_open_id` (`yz_open_id`),
|
||
|
|
KEY `idx_rfm_group` (`rfm_group`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员RFM洞察表';
|
||
|
|
|
||
|
|
-- 2. 客户标签表 (人群特征画像)
|
||
|
|
CREATE TABLE IF NOT EXISTS `adm_customer_tags` (
|
||
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
||
|
|
`yz_open_id` VARCHAR(64) NOT NULL,
|
||
|
|
`tag_name` VARCHAR(64) NOT NULL COMMENT '标签名称(如: 工作日外带客, 高客单囤货客)',
|
||
|
|
`tag_value` VARCHAR(128) DEFAULT NULL COMMENT '标签值或权重',
|
||
|
|
|
||
|
|
`etl_update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
UNIQUE KEY `uk_customer_tag` (`yz_open_id`, `tag_name`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='客户画像标签表';
|
||
|
|
|
||
|
|
|
||
|
|
-- ==========================================
|
||
|
|
-- 商品洞察 (Product Insights)
|
||
|
|
-- ==========================================
|
||
|
|
|
||
|
|
-- 3. 商品销售趋势表 (日维统计)
|
||
|
|
CREATE TABLE IF NOT EXISTS `adm_item_sales_trend` (
|
||
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
||
|
|
`stat_date` DATE NOT NULL COMMENT '统计归属日期',
|
||
|
|
`item_id` BIGINT NOT NULL COMMENT '商品ID',
|
||
|
|
`sku_id` BIGINT NOT NULL DEFAULT 0 COMMENT '规格ID',
|
||
|
|
`item_name` VARCHAR(128) DEFAULT NULL COMMENT '商品名称',
|
||
|
|
|
||
|
|
`sales_qty` INT DEFAULT 0 COMMENT '当日销量(件数)',
|
||
|
|
`sales_amount` DECIMAL(12, 2) DEFAULT 0.00 COMMENT '当日销售额',
|
||
|
|
`order_count` INT DEFAULT 0 COMMENT '当日包含该商品的订单数',
|
||
|
|
|
||
|
|
`etl_update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
UNIQUE KEY `uk_trend_date` (`stat_date`, `item_id`, `sku_id`),
|
||
|
|
KEY `idx_item` (`item_id`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品销售趋势表';
|
||
|
|
|
||
|
|
-- 4. 商品关联分析表 (购物篮挖掘)
|
||
|
|
CREATE TABLE IF NOT EXISTS `adm_item_basket` (
|
||
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
||
|
|
`item_id_a` BIGINT NOT NULL COMMENT '商品A',
|
||
|
|
`item_name_a` VARCHAR(128) DEFAULT NULL COMMENT '商品A名称',
|
||
|
|
`item_id_b` BIGINT NOT NULL COMMENT '商品B',
|
||
|
|
`item_name_b` VARCHAR(128) DEFAULT NULL COMMENT '商品B名称',
|
||
|
|
|
||
|
|
`pair_order_count` INT DEFAULT 0 COMMENT 'A和B共同出现的订单数',
|
||
|
|
`item_a_order_count` INT DEFAULT 0 COMMENT 'A独立出现的包含订单总数',
|
||
|
|
`confidence` DECIMAL(5, 4) DEFAULT 0.0000 COMMENT '置信度 (A->B的概率)',
|
||
|
|
|
||
|
|
`etl_update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
UNIQUE KEY `uk_item_pair` (`item_id_a`, `item_id_b`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品购物篮关联分析表';
|
||
|
|
|
||
|
|
-- 5. 商品复购分析表
|
||
|
|
CREATE TABLE IF NOT EXISTS `adm_item_repurchase` (
|
||
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
||
|
|
`stat_date` DATE NOT NULL COMMENT '统计归属日期',
|
||
|
|
`item_id` BIGINT NOT NULL,
|
||
|
|
`sku_id` BIGINT NOT NULL DEFAULT 0,
|
||
|
|
|
||
|
|
`purchaser_count_30d` INT DEFAULT 0 COMMENT '过去30天购买总人数',
|
||
|
|
`repurchaser_count_30d` INT DEFAULT 0 COMMENT '过去30天产生二次复购的人数',
|
||
|
|
`repurchase_rate_30d` DECIMAL(5, 4) DEFAULT 0.0000 COMMENT '30天复购率 (二次人数/总人数)',
|
||
|
|
|
||
|
|
`matrix_tag` VARCHAR(32) DEFAULT NULL COMMENT '波士顿矩阵打标分类 (如: 核心引流款, 需淘汰等)',
|
||
|
|
|
||
|
|
`etl_update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
UNIQUE KEY `uk_repurchase_date` (`stat_date`, `item_id`, `sku_id`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品复购率分析表';
|