暫無描述
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

SKILL.md 6.3KB


name: database-schema-index description: 服装零售ERP数据库架构总索引,包含查询拆解框架、档案映射规则(含维度表)、多步骤执行逻辑和所有表skill清单 license: MIT compatibility: opencode metadata: category: database domain: retail-erp tables: 24

language: zh-CN

数据库架构查询框架

查询拆解模型

所有查询必须拆解为五个部分:

  1. 查询部分:SELECT字段,确定返回的数据维度
  2. from部分:主表和关联表,明确数据来源
  3. where部分:查询条件,特别关注档案映射
  4. 汇总部分:GROUP BY和聚合函数
  5. 排序部分:ORDER BY规则

档案映射规则

用户查询条件必须映射到对应的档案表字段,特别关注维度表关联:

店铺范围映射

  • 基础信息:店铺名称、城市、省份、地址等 → master_store表字段
  • 状态信息:店铺状态、是否激活、开业日期等 → master_store表字段
  • 维度筛选:经营权模式、店铺定位、零售业态、市场层级、销售渠道、区域等 → 使用master_store表的维度ID字段直接筛选
    • 示例:”旗舰店” → store_tier_id = 维度表中FLA编码对应的ID
    • 示例:”直营店” → business_model_id = 维度表中DIR编码对应的ID
    • 示例:”购物中心店” → retail_format_id = 维度表中SMC编码对应的ID
    • 注意:维度ID直接存储在字段中,无需外键关联。可通过子查询从master_store_dimension表获取ID值

商品范围映射

  • 基础信息:商品名称、编码、条码、款式等 → master_product表字段
  • 业务指标:价格、库存、销售流速、毛利率等 → master_product表字段
  • 维度筛选:分类、品牌、颜色、尺码、季节等 → 使用master_product表的维度代码字段直接筛选
    • 示例:”服装类” → category_code=‘CLOTHING’
    • 示例:”春夏商品” → season_code=‘SS’
    • 示例:”红色系” → color_code=‘RED’
    • 注意:维度编码直接存储在字段中,无需外键关联。维度表作为独立数据字典提供编码-名称映射

公司范围映射

  • 基础信息:公司名称、编码、简称、地址等 → master_company表字段
  • 财务信息:税号、银行账户、开户行等 → master_company表字段
  • 维度筛选:公司类型、行业、规模等 → 使用master_company表的type字段直接筛选
    • 示例:”供应商” → type=‘SUPPLIER’
    • 示例:”子公司” → type=‘SUBSIDIARY’
    • 注意:类型编码直接存储在字段中,无需外键关联。维度表作为独立数据字典提供编码-名称映射

时间范围映射

  • 所有单据表的查询日期默认使用sure_date字段
  • 除非用户特别说明使用其他时间字段
  • created_at用于创建时间查询
  • 主数据表使用data_date作为快照日期

多步骤执行逻辑

复杂查询必须拆解为多个步骤执行:

步骤拆解顺序

  1. 档案筛选步骤:先筛选店铺、商品、公司等档案数据
  2. 数据关联步骤:将档案筛选结果与业务数据关联
  3. 时间筛选步骤:按时间范围筛选数据
  4. 汇总统计步骤:进行分组和聚合计算

中间表命名规则

  • 格式:{user_id}_{datetime}_{step}_{description}
  • 示例:user123_202502071530_step1_filtered_stores
  • 用户ID开头,后面跟日期时间,然后是步骤和描述

Doris中间表操作

  • 每步查询结果保存为Doris表
  • 使用CREATE TABLE AS SELECT语法
  • 中间表自动管理,建议设置清理机制

关键查询规则

租户隔离

  • 所有查询必须包含tenant_id条件
  • 确保数据多租户隔离

单据状态

  • 所有单据表查询必须检查sure_status=1
  • 表示已登账的有效数据
  • bill_status表示业务状态

关联完整性

  • Bill表与三张主表的关联必须正确
  • 使用正确的关联字段:company_idstore_idproduct_id

维度表使用

  • 维度表作为独立数据字典,存储分类标准编码与名称的映射
  • 主表中的维度字段(如business_model_idcategory_codetype)直接存储维度值,无需外键关联
  • 查询时可直接使用维度字段值筛选,如需获取维度名称可单独查询维度表
  • 店铺维度字段存储ID值,商品和公司维度字段存储编码值

表skill清单

主数据表 (3个)

  • master-company:公司主数据表
  • master-store:店铺主数据表
  • master-product:商品资料主表

单据表 (16个)

  • bill-sales-retail:零售销售单据表
  • bill-sales-wholesale:批发销售单据表
  • bill-purchase-receipt:采购收货单据表
  • bill-purchase-return:采购退货单据表
  • bill-purchase-plan:采购计划单据表
  • bill-transfer-ship:库存调拨发货单
  • bill-transfer-receive:库存调拨收货单
  • bill-return:退货发货单据表
  • bill-return-receive:退货收货单据表
  • bill-order:订货单据表
  • bill-order-replenish:补货单据表
  • bill-shipment:发货单据表
  • bill-shipment-receive:发货收货单据表
  • bill-inventory-count:库存盘点单据表
  • bill-stock-occupation:库存占用单据表
  • bill-presale-retail:零售预售单据表
  • bill-presale-settlement:预售核销单据表

维度表 (3个)

  • master_store_dimension:店铺维度表 - 存储经营权模式、店铺定位、零售业态、市场层级、销售渠道、区域等分类标准
  • master_product_dimension:商品维度表 - 存储商品大类、季节、波段、面料、颜色色系、尺码组等分类标准
  • master_company_dimension:公司维度表 - 存储公司类型、行业、规模、区域等分类标准

快照表 (1个)

  • stock-store-snapshot:日店铺库存快照表

参考文件 (1个)

  • init-defaults:默认值初始化文件 - 提供维度表的默认参考数据

使用说明

  1. 根据查询需求选择相关的表skill加载
  2. 按照查询拆解框架分析用户查询
  3. 将用户条件映射到对应的档案表字段
  4. 按多步骤逻辑拆解复杂查询
  5. 使用中间表保存每步结果
  6. 确保遵守所有查询规则

注意:时间字段默认使用sure_date,中间表命名使用用户ID开头加日期时间格式。