我正在重新构建我的问题如下:
我在一个表上查询,运行时间比平时长。在同一个表上有其他插入/更新查询,但它们似乎运行正常。所以我给出了查询创建问题如下:
表格中的列最初是:
alter table fOSMHistory
add RowID int identity,
FromRowID int,
LastRowID int,
LastStatus varchar(10),
LastSeverity int,ApprLeaveID int;
在每个蓝色结束日期之前找到最后的颜色状态:
Update fOSMHistory
set LastStatus = cs.Status,
LastSeverity = cs.Severity
from fOSMHistory cs join fOSMHistory ce -- Colour Start and Colour end
on cs.RowID = ce.LastRowID
join fOSMHistory -- Blue Ends
on fOSMHistory.Status = 'BlueEnd'
and cs.employeeid = fOSMHistory.employeeid
and cs.SkillID = fOSMHistory.SkillID
and fOSMHistory.StartDate between cs.StartDate and ce.StartDate
表格中的样本数据如下: enter image description here
最初添加的列将在最终查询中删除,这就是它们在最终数据中不可见的原因