我们正在使用合并查询从与目标表具有相同结构的源表中更新 2 列。但是当执行合并查询时,它会持续运行很长时间。源表 PSP_LABOR_SCHD_DAY_F_ROLLUP_FRS_356 具有“22603114”行,必须对其进行更新的目标表“EDWFIN.PSP_LABOR_SCHD_DAY_F_ROLLUP”由“1118892748”行组成。目标表在这些列上有一个索引。
MERGE INTO EDWFIN.PSP_LABOR_SCHD_DAY_F_ROLLUP A USING
EDWFIN.PSP_LABOR_SCHD_DAY_F_ROLLUP_FRS_356 B ON
(
A.PAY_RANGE_START_DATE_KEY = B.PAY_RANGE_START_DATE_KEY AND
A.AA_PERSON_NATURAL_KEY = B.AA_PERSON_NATURAL_KEY AND
A.AA_PERSON_ASSIGNMENT_KEY = B.AA_PERSON_ASSIGNMENT_KEY AND
A.SCHEDULE_LINE_ID = B.SCHEDULE_LINE_ID
)
WHEN MATCHED THEN
UPDATE
SET
A.SRC_CREATED_DATE = B.SRC_CREATED_DATE,
A.SRC_LAST_UPDATE_DATE = B.SRC_LAST_UPDATE_DATE ;
这些是目标表“PSP_LABOR_SCHD_DAY_F_ROLLUP”中定义的Index
PSP_LABOR_SCHD_DAY_F_PART_60 HR_PAY_PERIOD_KEY PSP_LABOR_SCHD_DAY_F_PART_64 SCHEDULE_LINE_ID PSP_LABOR_SCHD_DAY_F_PART_61 PAY_RANGE_START_DATE_KEY PSP_LABOR_SCHD_DAY_F_PART_02 AA_PERSON_NATURAL_KEY PSP_LABOR_SCHD_DAY_F_PART_03 AA_PERSON_ASSIGNMENT_KEY