select * from cat where birth>2000-01-01(这个是datatime类型)
这句的查询结果难道不是表中年份比2000年大的吗?,怎么会出现两种情况都有呢?
调试截图地址是
http://img2.9158.com/photoboard/rt123456/2006/10/17/200610174364484.jpg
,我是菜鸟,谢谢大家解答下啊!

解决方案 »

  1.   

    select * from cat where birth>'2000-01-01' -- (这个是datatime类型)
      

  2.   

    select * from cat where LEFT(birth,4)>'2000' 
    ??
      

  3.   

    select * from cat where substring(birth,1,4)>'2000' 
    ??
      

  4.   

    select * from cat where convert(char(10),birth,120)>'2000-01-01'
      

  5.   

    不对啊flash,
    ,用substring时候显示:数据类型 datetime 对于函数 substring 无效。
     LEFT的时候一个记录都没有
    我不是光跟年比啊.比喻说这样的啊  ,,和2000-01-05比,那数据库中2000-01-06这个记录也要能查出来呀
      

  6.   

    select * from cat where LEFT(birth,4)>2000
    ??