-2
year X+1 2009 2008-12-21 00:00:00.000 2009-12-28 00:00:00.000
year X 2008 2007-12-26 00:00:00.000 2008-12-20 00:00:00.000
我想X年(2008年)的结束日期比较一年的开始日期X + 1(2009)比较的一年的结束日期和今年的开始日期+ 1
year X+1 2009 2008-12-21 00:00:00.000 2009-12-28 00:00:00.000
year X 2008 2007-12-26 00:00:00.000 2008-12-20 00:00:00.000
我想X年(2008年)的结束日期比较一年的开始日期X + 1(2009)比较的一年的结束日期和今年的开始日期+ 1
将LAG
应用于示例查询:
select *
from
(
select PersonID, Year(taxeDate),PeriodeStartDate ,PeriodeEndDate,
LAG(PeriodeEndDate) -- previous row's PeriodeEndDate
OVER (PARTITION BY PersonID
ORDER BY PeriodeStartDate) as prev_EndDate
from dbo.Payment
) as dt
where PeriodeStartDate < prev_EndDate
非常感谢,这真的帮助了我,我对你很感激。 – Ilyas
这里是否有实际的查询?您使用的SQL版本是什么(例如MySQL,Oracle等)? –
你想如何比较它们? *比较*是一个非常普遍的术语......你想完成什么? – Siyual
检查'LAG'函数,这可以用来访问'上一行'的数据:'LAG(end_date)OVER(分区由人类ORDER BY开始日期)' – dnoeth