实现阶段日期查询

 

  declare @date_Start datetime
  declare @date_End datetime
  
  select @date_Start=DateAdd(day,   2-datepart(WeekDay,getdate()),   getdate())--本周 星期一

  select @date_End=DateAdd(day,   8-datepart(WeekDay,getdate()),   getdate())--本周星期天

  SELECT * FROM tb_TLT_Basic_Info
  WHERE  9 = ORG_Enterprise_Id
  and DateAdd(year,datediff(year,TLT_Birthday,@date_Start),TLT_Birthday)
  between @date_Start
  and case
   when datediff(year,@date_Start,@date_End)=0 then @date_End
   else dateadd(year,datediff(year,'19001231',@date_Start),'19001231')
   end
  or dateadd(year,datediff(year,TLT_Birthday,@date_End),TLT_Birthday)
  between case
   when datediff(year,@date_Start,@date_End)=0 then @date_Start
   else dateadd(year,datediff(year,'19000101',@date_End),'19000101')
   end
  and @date_End

 

posted @ 2009-12-28 19:10  autumnyuhe  阅读(845)  评论(0编辑  收藏  举报