在以下查询中,开始/结束列是日期时间字段。
我应该如何修改此查询以获得另外两列,一列具有最小日期,另一列具有在每一行中重复的最大日期(所有 6 个日期时间字段和所有行)。
或者,对于相同的结果集,我如何创建一个只返回这 2 个(最小/最大)日期的新查询?
非常感谢!(我想要 SQL Server 2005 和 Sybase ASE 12.5.4 的答案)
select erg_mst.code,
erg_types.perigrafh,
erg_mst.FirstBaseStart,
erg_mst.FirstBaseFinish,
erg_mst.LastBaseStart,
erg_mst.LastBaseFinish ,
erg_mst.ActualStart,
erg_mst.ActualFinish
from erg_mst inner join
erg_types on erg_mst.type = erg_types.type_code
where erg_mst.activemodule = 'co'
and (
FirstBaseStart <> NULL OR
FirstBaseFinish <> NULL OR
LastBaseStart <> NULL OR
LastBaseFinish <> NULL OR
ActualStart <> NULL OR
ActualFinish <> NULL
)
order by isnull(FirstBaseStart,isnull(LastBaseStart,ActualStart))