求一段sql判断当前日期在往月(已经过了的月份);
怎么获取当本月一日和本月最后一天时间,用于比较用;SQL

解决方案 »

  1.   

    declare @startDate datetime,@endDate datetime
    set @startDate = DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
    set @endDate = DATEADD(day,-1,DATEADD(mm,1,@startDate))
    select @startDate datetime,@endDate
      

  2.   

    declare @startDate datetime,@endDate datetime
    set @startDate = DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
    set @endDate = DATEADD(day,-1,DATEADD(mm,1,@startDate))
    select @startDate,@endDate 
      

  3.   

    SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) startDate,
     DATEADD(day,-1,DATEADD(mm,1,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))) endDate
      

  4.   

    SELECT cast(CONVERT(varchar(8),getdate(),120)+'01' as datetime) startDate,
    DATEADD(day,-1,CONVERT(varchar(8),DATEADD(month,1,getdate()),120)+'01') endDate