请问我有一句话是这样的。
select count(*) from content where author='系统管理员' and channelid=240 and outdatetime>='20030701000000' outdatetime 这个字段是 varchar 型
我如何拿他来比大小呢。这样查出来没结果。
outdatetime 里面有 一个 20070725999999 的 肯定是比20030701000000大 但是没结果,谁能告诉我改怎么做,如果不行  可以截取后面6位,
请高手指点,谢谢!!

解决方案 »

  1.   

    select count(*) from content where author='系统管理员' and channelid=240 and cast(left(outdatetime,8) as datetime)>='2003-07-01' 
      

  2.   

    另:
    字符串是可以比较大小的declare @s varchar(30)
    set @s='20070725999999'
    declare @s1 varchar(30)
    set @s1='20030701000000'if @s>@s1 
      print '20070725999999>20030701000000'if @s<@s1 
      print '20070725999999<20030701000000'--结果
    20070725999999>20030701000000
      

  3.   

    varchar比较大小就是直接比较字母顺序。
    当然有些时候用varchar表示的时间就会比较不出来,转换成时间再比较吧