SQL检查接下来的两年中是否存在日期

时间:2016-11-28 15:25:14

标签: sql sql-server

我有一张表,其中每条记录都有多个日期保存在日期栏中,例如记录ID' 01'可以有6行,每个日期分别来自2015年,2016年,2017年,2018年和2019年。每个记录ID每年只有一个日期。

我有兴趣查看所有具有当年日期的记录ID,如果他们在接下来的两年中有一个日期(即记录ID的日期是2017年和2018年),那么就是明年(记录) ID只有2017年的日期)或仅在今年。

我对未在当年没有约会的记录感兴趣,即使他们可能在未来两年内有日期。我也对3年后可能有约会但未在未来2年内有约会的记录不感兴趣。

提前致谢。

1 个答案:

答案 0 :(得分:0)

根据您的问题。试试这个。 的更新

Select RecordID, Year(DateColumn)
From table
Where Year(DateColumn) Between Year(GetDate()) and (Year(GetDate()) + 2)    
Group By RecordID, Year(DateColumn)
Having Count(1) = 3