数据库里有个datetime类型的字段例如 2006-11-6 16:12:45现在我想把2006开头的记录都删除但是我写
DELETE FROM attend
WHERE (card_time LIKE '2006%')好象不起作用 一条都删除不了请问是怎么回事 谢谢

解决方案 »

  1.   

    delete tb where year([card_time])=2006
      

  2.   

    where card_time >='2006-01-01' AND card_time < '2007-01-01'
      

  3.   

    DELETE FROM attend
    WHERE datepart(YY,card_time) ='2006'
      

  4.   


    +1delete tb where convert(year,[card_time])=2006
      

  5.   

    字段不是字符型,所以这路用like无效。
    用between...and...要不year()效率要高。因为不用scan的全表+不用运算每条记录。