ddl-piecework-date.sql 871 B

12345678910111213141516171819202122232425262728
  1. -- T09计件统计修复 - DDL脚本
  2. -- 执行时间:2026-07-17
  3. -- 目标库:mes_cloud_t09
  4. -- 1. 新增 piecework_date 字段
  5. ALTER TABLE mes_product_record
  6. ADD COLUMN piecework_date DATETIME NULL
  7. COMMENT '计件时间(首次加工完成时间)'
  8. AFTER update_date;
  9. -- 2. 添加索引提升查询性能
  10. CREATE INDEX idx_piecework_oprno_date
  11. ON mes_product_record(oprno, piecework_date, craft);
  12. -- 3. 历史数据迁移(已完成的记录用 update_date 初始化)
  13. UPDATE mes_product_record
  14. SET piecework_date = update_date
  15. WHERE craft = '100000'
  16. AND content NOT IN ('UDF', '')
  17. AND piecework_date IS NULL;
  18. -- 验证查询
  19. SELECT
  20. COUNT(*) as total,
  21. SUM(CASE WHEN piecework_date IS NOT NULL THEN 1 ELSE 0 END) as has_piecework_date,
  22. SUM(CASE WHEN content = 'UDF' THEN 1 ELSE 0 END) as udf_count
  23. FROM mes_product_record
  24. WHERE craft = '100000';