02_create_dwd_table.sql 4.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. -- 毛利分析DWD层宽表
  2. CREATE TABLE IF NOT EXISTS fact_fee_grossprofit (
  3. `id` INT NOT NULL COMMENT "收费明细id",
  4. `patientId` VARCHAR(50) NULL COMMENT "病历号",
  5. `created` DATETIME NULL COMMENT "创建时间",
  6. `modified` DATETIME NULL COMMENT "修改时间",
  7. `month` VARCHAR(10) NULL COMMENT "月份",
  8. `org_name` VARCHAR(50) NULL COMMENT "诊所",
  9. `group_id` INT NULL COMMENT "集团id",
  10. `group_name` VARCHAR(100) NULL COMMENT "集团名称",
  11. `pay_time` DATETIME NULL COMMENT "收/退费时间",
  12. `fee_time` DATETIME NULL COMMENT "原始购买时间",
  13. `clinic_id` INT NULL COMMENT "挂号ID",
  14. `come_time` DATETIME NULL COMMENT "到诊时间",
  15. `patient_name` VARCHAR(50) NULL COMMENT "姓名",
  16. `patient_mobile` VARCHAR(50) NULL COMMENT "患者手机",
  17. `patient_identity` VARCHAR(50) NULL COMMENT "身份",
  18. `birthday` DATE NULL COMMENT "出生日期",
  19. `age` INT NULL COMMENT "年龄",
  20. `source1` VARCHAR(50) NULL COMMENT "一级来源",
  21. `source2` VARCHAR(50) NULL COMMENT "二级来源",
  22. `inviter_name` VARCHAR(20) NULL COMMENT "介绍人姓名",
  23. `inviter_phone` VARCHAR(30) NULL COMMENT "介绍人电话",
  24. `first_accept_date` DATE NULL COMMENT "首诊日期",
  25. `first_distance_day` INT NULL COMMENT "首诊距今天数",
  26. `by_user_name` VARCHAR(100) NULL COMMENT "收银员",
  27. `doctor_name` VARCHAR(100) NULL COMMENT "接诊医生",
  28. `opt_name` VARCHAR(50) NULL COMMENT "接诊视光师",
  29. `assistant_name` VARCHAR(50) NULL COMMENT "接诊医助",
  30. `pay_status` VARCHAR(10) NULL COMMENT "交易类型",
  31. `order_no` VARCHAR(100) NULL COMMENT "收费单号",
  32. `pk_code` VARCHAR(100) NULL COMMENT "诊所唯一ID",
  33. `uuid_no` VARCHAR(100) NULL COMMENT "集采唯一ID",
  34. `class_name` VARCHAR(100) NULL COMMENT "项目分类",
  35. `line_name` VARCHAR(50) NULL COMMENT "产品线",
  36. `fee_class` VARCHAR(100) NULL COMMENT "收费分类",
  37. `name` VARCHAR(50) NULL COMMENT "收费项目",
  38. `combo_name` VARCHAR(100) NULL COMMENT "套餐名称",
  39. `flag_memo` VARCHAR(100) NULL COMMENT "收费项目类型",
  40. `price` DECIMAL(11,2) NULL COMMENT "单价",
  41. `num` INT NULL COMMENT "数量",
  42. `unit` VARCHAR(50) NULL COMMENT "单位",
  43. `sum_price` DECIMAL(11,2) NULL COMMENT "原价",
  44. `should_amt` DECIMAL(11,2) NULL COMMENT "应收金额",
  45. `cost_amt` DECIMAL(11,2) NULL COMMENT "成本价",
  46. `profit_amt` DECIMAL(11,2) NULL COMMENT "毛利",
  47. `profit_rate` VARCHAR(20) NULL COMMENT "毛利率",
  48. `discount` VARCHAR(20) NULL COMMENT "折扣比例%",
  49. `discount_memo` TEXT NULL COMMENT "折扣原因",
  50. `coupon_name` VARCHAR(500) NULL COMMENT "优惠卷",
  51. `blq_amt` DECIMAL(11,2) NULL COMMENT "铂林券金额",
  52. `hx_sum_price` DECIMAL(11,2) NULL COMMENT "业绩原价",
  53. `hx_num` INT NULL COMMENT "业绩数量",
  54. `hx_amt` DECIMAL(11,2) NULL COMMENT "业绩应收",
  55. `hx_cost_price` DECIMAL(11,2) NULL COMMENT "业绩成本",
  56. `pay_sum_price` DECIMAL(11,2) NULL COMMENT "实际小计",
  57. `pay_num` INT NULL COMMENT "实际数量",
  58. `pay_amt` DECIMAL(11,2) NULL COMMENT "实际金额",
  59. `pay_cost_price` DECIMAL(11,2) NULL COMMENT "实际成本",
  60. `pay_profit_amt` DECIMAL(11,2) NULL COMMENT "业绩毛利",
  61. `pay_profit_rate` DECIMAL(11,2) NULL COMMENT "业绩毛利率",
  62. `factory_name` VARCHAR(50) NULL COMMENT "制造商",
  63. `brands_name` VARCHAR(50) NULL COMMENT "品牌",
  64. `variety_name` VARCHAR(50) NULL COMMENT "品种",
  65. `exec_time` DATETIME NULL COMMENT "交付时间",
  66. `exec_status_name` VARCHAR(10) NULL COMMENT "交付状态",
  67. `order_status_name` VARCHAR(10) NULL COMMENT "订单状态",
  68. `cost_flag` INT NULL COMMENT "成本标识",
  69. `update_time` DATETIME NULL COMMENT "成本更新时间",
  70. `cost_flag2` INT NULL COMMENT "成本标识2",
  71. `update_time2` DATETIME NULL COMMENT "成本更新时间2",
  72. `exec_status` INT NULL COMMENT "交付状态",
  73. `flag` INT NULL COMMENT "标识",
  74. `per_id` INT NULL COMMENT "人员id",
  75. `order_id` INT NULL COMMENT "订单id",
  76. `type_flag` INT NULL COMMENT "类型标识",
  77. `order_status` INT NULL COMMENT "订单状态",
  78. `sell_time` DATETIME NULL COMMENT "销售时间",
  79. `sync_date` DATE NULL COMMENT "同步日期"
  80. ) ENGINE=OLAP
  81. DUPLICATE KEY(`id`, `patientId`, `created`)
  82. COMMENT "销售订单毛利统计宽表"
  83. PARTITION BY RANGE (`sync_date`) (
  84. PARTITION p20190401 VALUES [("2019-04-01"), ("2019-05-01"))
  85. )
  86. DISTRIBUTED BY HASH(`id`) BUCKETS 10
  87. PROPERTIES (
  88. "replication_num" = "1",
  89. "storage_medium" = "HDD",
  90. "enable_dynamic_partition" = "true",
  91. "dynamic_partition_end" = 1,
  92. "dynamic_partition_time_unit" = "MONTH",
  93. "dynamic_partition_history" = "-1"
  94. );