加入我要从Flow表中删除2007年2月或者207年3月的数据改如何写,表中有一的Date字段?
delete * from Flow WHERE ? ='" + 2007年2月 + "'
问号部分怎么写?或者有其它什么写法?

解决方案 »

  1.   

    delete * from Flow WHERE  datename(yy,列名)+'年'+ltrim(datepart(mm,列名))+'月' = '2007年2月'
      

  2.   


    表中有没有date字段??有就好办.DELETE FROM Table WHERE [Date] >='2007-02-01' AND [Date] <= '2007-03-31'
      

  3.   

    delete table where datepart(mm,日期字段)=2
      

  4.   


    DELETE TB WHERE YEAR(日期字段)=2008 AND MONTH(日期字段)=9
      

  5.   


    回Garnett_KG兄:但是这样我要先判断这个月有多少天,然后如果是2月还要判断是否是闰年,这样我闲麻烦点了!
      

  6.   


    create table #Flow
    (
    date datetime
    )insert into #Flow
    select '2007-09-10' union all
    select '2007-09-11' union all
    select '2007-10-10' declare @month nchar(6)
    set @month = '200709'delete from #Flow where convert(nvarchar,date,112) like @month + '%'
    select * from #Flowdrop table #Flow结果:
    2007-10-10 00:00:00.000
      

  7.   


    但是这样我要先判断这个月有多少天,然后如果是2月还要判断是否是闰年,这样我闲麻烦点了!>>不用那么麻烦了.F1        F2          Date
    ------------------------------------
    A         A1          2007-01-01
    B         B1          2007-02-12
    C         C1          2007-03-01
    D         D1          2008-01-01
    ...你要删2007年2月的数据, 楼上几位的方法都行啊.