请问一下我要当月的前一个月的数据,这个语句应该怎么写.
我写成这样报错.
select * from tb where datepart(month,getdate()-1)

解决方案 »

  1.   

    SELECT * 
    FROM tb
    WHERE DATEDIFF(MONTH,dt_col,GETDATE())=1
      

  2.   

    select * from tb where datediff(month,时间字段,getdate())=1
      

  3.   

    WHERE DATEDIFF(MONTH,dt_col,GETDATE())=1
      

  4.   

    还是不明白,我不知道datediff是怎么用的吗?我要查的是当月的前一个月的数据,比如现在是9月了,我要查8月份的数.
      

  5.   

    这个要看你的数据格式是什么?例如:select * from tb where  month(日期)=month( dateadd(month,-1,getdate()))
    让你所要查询数据的日期的月份=当前日期的月份-1