Blame view

项目文档相关/sql/同步耗卡时间和创建时间字段.sql 3.83 KB
d8035736   “wangming”   Refactor project ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
  -- ============================================
  -- 同步耗卡时间和创建时间字段
  -- 说明:
  -- 1.  lq_xh_pxmx 表添加 yjsj 字段(耗卡时间)
  -- 2.  lq_xh_jksyj 表添加 F_CreateTime 字段(创建时间)
  -- 3.  lq_xh_kjbsyj 表添加 F_CreateTime 字段(创建时间)
  -- 4. 同步 lq_xh_hyhk.hksj 到相关表的 yjsj 字段
  -- 5. 同步 lq_xh_hyhk.F_CreateTime 到相关表的创建时间字段
  -- ============================================
  
  -- ============================================
  -- 第一步:添加字段
  -- ============================================
  
  -- 1.  lq_xh_pxmx 表添加 yjsj 字段(耗卡时间)
  ALTER TABLE `lq_xh_pxmx` 
  ADD COLUMN `yjsj` DATETIME NULL COMMENT '耗卡时间' AFTER `F_CreateTIme`;
  
  -- 2.  lq_xh_jksyj 表添加 F_CreateTime 字段(创建时间)
  ALTER TABLE `lq_xh_jksyj` 
  ADD COLUMN `F_CreateTime` DATETIME NULL COMMENT '创建时间' AFTER `yjsj`;
  
  -- 3.  lq_xh_kjbsyj 表添加 F_CreateTime 字段(创建时间)
  ALTER TABLE `lq_xh_kjbsyj` 
  ADD COLUMN `F_CreateTime` DATETIME NULL COMMENT '创建时间' AFTER `yjsj`;
  
  -- ============================================
  -- 第二步:同步数据
  -- ============================================
  
  -- 4. 同步 lq_xh_hyhk.hksj  lq_xh_pxmx.yjsj
  UPDATE `lq_xh_pxmx` pxmx
  INNER JOIN `lq_xh_hyhk` hyhk ON pxmx.F_ConsumeInfoId = hyhk.F_Id
  SET pxmx.yjsj = hyhk.hksj
  WHERE hyhk.hksj IS NOT NULL;
  
  -- 5. 同步 lq_xh_hyhk.hksj  lq_xh_jksyj.yjsj
  UPDATE `lq_xh_jksyj` jksyj
  INNER JOIN `lq_xh_hyhk` hyhk ON jksyj.glkdbh = hyhk.F_Id
  SET jksyj.yjsj = hyhk.hksj
  WHERE hyhk.hksj IS NOT NULL;
  
  -- 6. 同步 lq_xh_hyhk.hksj  lq_xh_kjbsyj.yjsj
  UPDATE `lq_xh_kjbsyj` kjbsyj
  INNER JOIN `lq_xh_hyhk` hyhk ON kjbsyj.glkdbh = hyhk.F_Id
  SET kjbsyj.yjsj = hyhk.hksj
  WHERE hyhk.hksj IS NOT NULL;
  
  -- 7. 同步 lq_xh_hyhk.F_CreateTime  lq_xh_pxmx.F_CreateTIme
  -- 注意:lq_xh_pxmx 表的创建时间字段是 F_CreateTIme(注意拼写)
  UPDATE `lq_xh_pxmx` pxmx
  INNER JOIN `lq_xh_hyhk` hyhk ON pxmx.F_ConsumeInfoId = hyhk.F_Id
  SET pxmx.F_CreateTIme = hyhk.F_CreateTime
  WHERE hyhk.F_CreateTime IS NOT NULL;
  
  -- 8. 同步 lq_xh_hyhk.F_CreateTime  lq_xh_jksyj.F_CreateTime
  UPDATE `lq_xh_jksyj` jksyj
  INNER JOIN `lq_xh_hyhk` hyhk ON jksyj.glkdbh = hyhk.F_Id
  SET jksyj.F_CreateTime = hyhk.F_CreateTime
  WHERE hyhk.F_CreateTime IS NOT NULL;
  
  -- 9. 同步 lq_xh_hyhk.F_CreateTime  lq_xh_kjbsyj.F_CreateTime
  UPDATE `lq_xh_kjbsyj` kjbsyj
  INNER JOIN `lq_xh_hyhk` hyhk ON kjbsyj.glkdbh = hyhk.F_Id
  SET kjbsyj.F_CreateTime = hyhk.F_CreateTime
  WHERE hyhk.F_CreateTime IS NOT NULL;
  
  -- ============================================
  -- 验证查询(可选,用于验证同步结果)
  -- ============================================
  
  -- 验证 lq_xh_pxmx 表数据同步情况
  -- SELECT 
  --     pxmx.F_Id,
  --     pxmx.F_ConsumeInfoId,
  --     pxmx.yjsj as PxmxYjsj,
  --     hyhk.hksj as HyhkHksj,
  --     pxmx.F_CreateTIme as PxmxCreateTime,
  --     hyhk.F_CreateTime as HyhkCreateTime
  -- FROM lq_xh_pxmx pxmx
  -- LEFT JOIN lq_xh_hyhk hyhk ON pxmx.F_ConsumeInfoId = hyhk.F_Id
  -- WHERE pxmx.F_ConsumeInfoId IS NOT NULL
  -- LIMIT 10;
  
  -- 验证 lq_xh_jksyj 表数据同步情况
  -- SELECT 
  --     jksyj.F_Id,
  --     jksyj.glkdbh,
  --     jksyj.yjsj as JksyjYjsj,
  --     hyhk.hksj as HyhkHksj,
  --     jksyj.F_CreateTime as JksyjCreateTime,
  --     hyhk.F_CreateTime as HyhkCreateTime
  -- FROM lq_xh_jksyj jksyj
  -- LEFT JOIN lq_xh_hyhk hyhk ON jksyj.glkdbh = hyhk.F_Id
  -- WHERE jksyj.glkdbh IS NOT NULL
  -- LIMIT 10;
  
  -- 验证 lq_xh_kjbsyj 表数据同步情况
  -- SELECT 
  --     kjbsyj.F_Id,
  --     kjbsyj.glkdbh,
  --     kjbsyj.yjsj as KjbsyjYjsj,
  --     hyhk.hksj as HyhkHksj,
  --     kjbsyj.F_CreateTime as KjbsyjCreateTime,
  --     hyhk.F_CreateTime as HyhkCreateTime
  -- FROM lq_xh_kjbsyj kjbsyj
  -- LEFT JOIN lq_xh_hyhk hyhk ON kjbsyj.glkdbh = hyhk.F_Id
  -- WHERE kjbsyj.glkdbh IS NOT NULL
  -- LIMIT 10;