select * from users where CONVERT(VARCHAR(10), Login_Date, 120 )='2008-5-27' 我数据库里记录的 Login_Date字段为2008-5-27 10:29:59 可是 怎么查出来的 为空???

解决方案 »

  1.   

    select * from users where CONVERT(VARCHAR(10), Login_Date, 120 )='2008-05-27' 
      

  2.   

    select * from users where CONVERT(VARCHAR(10), Login_Date, 120 )='2008-05-27' 
      

  3.   


    select * from users where CONVERT(VARCHAR(10), Login_Date, 120 )='2008-5-27' 
    --------------
    --这样吧?
    select * from users where datediff(dd,login_date,'2008-5-27')=0可能是CONVERT(VARCHAR(10), Login_Date, 120 )将2008-5-27 10:29:59转换成了2008-05-27
    所以不等于'2008-5-27' ,因为这两个字符串是不相等的。
      

  4.   


    select 1 where datediff(dd,getdate(),'2008-6-6')=0
    --结果:1select 1 where convert(varchar(10),getdate(),120)='2008-6-6'
    --结果:无
      

  5.   

    select * from users where datediff(d,Login_Date,'2008-5-27') = 0