那按照你的这两个例子,这样就行了 select dateadd(month,3,'2014-01-01')-1

解决方案 »

  1.   

    求两个日期之间的天数?两个日期间的天数差
    select DATEDIFF(day,'2014-1-1','2014-3-30')还是某个日期前推或是后推(2个月或是3个月)后的另一个日期?
    select DATEADD(MM,2,'2014-2-15')--这个是2个月后的另一个日期select DATEADD(day,60,'2014-2-15')--这个是60天后的另一个日期
      

  2.   


    DECLARE @SDATE VARCHAR(10) --开始时间
    DECLARE @EDATE VARCHAR(10) --结束时间
    DECLARE @MAX_DIFF INT --最大允许误差的天数
    SET @SDATE='2014-08-15'
    SET @EDATE='2014-10-14'
    SET @MAX_DIFF=2 --根据楼主客户的需求,暂定最大误差天数为2
    SELECT (CASE WHEN DATEDIFF(MONTH,@SDATE,DATEADD(DAY,@MAX_DIFF,@EDATE))>DATEDIFF(MONTH,@SDATE,@EDATE) THEN DATEDIFF(MONTH,@SDATE,@EDATE)+1 ELSE DATEDIFF(MONTH,@SDATE,@EDATE) END)
    很简单,上面这条语句可以搞定,你要让客户确定,最大允许误差天数。这样就可以
      

  3.   

    WHERE 时间>='2014-01-01'
    ANF 时间<'2014-04-01'