选择在某个日期范围内(开始日期和结束日期)年满 17 岁的用户--
感谢大家!
用户
- ID
- 出生日期
例子:
User_1 生日09/28/1996
User_2 生日08/25/1996
User_3 生日07/28/1995
User_4 生日05/25/1995
如果日期范围是FROM 03/05/2013 To End Date 6/05/2013 *User_1 和 User_2 出现是因为他们在该时间段内符合 17 岁的标准*
然而
如果范围从 02/10/2012到结束日期 06/05/2013 所有用户都应该出现,因为他们在日期范围内的某个时间点都是 17 岁
我曾尝试使用 Datepart() 但我无法清楚地思考它以得出我想要的答案
Select u.id, u.birthdate
From Users u
where convert(varchar,DATEPART(MM,u.birthdate))<=DATEPART(MM,'03/05/2013')
在大家的帮助下,我得出了一个结论
DATEADD(YY,17,birthdate) between @from and @end