2016-08-12 132 views
-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

+0

这里是否有实际的查询?您使用的SQL版本是什么(例如MySQL,Oracle等)? –

+0

你想如何比较它们? *比较*是一个非常普遍的术语......你想完成什么? – Siyual

+0

检查'LAG'函数,这可以用来访问'上一行'的数据:'LAG(end_date)OVER(分区由人类ORDER BY开始日期)' – dnoeth

回答

0

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 
+0

非常感谢,这真的帮助了我,我对你很感激。 – Ilyas

相关问题