我用的是C#,从页面上的Datetimepicker控件传过来2个日期值“2010-04-01” 和“2010-04-18”,我想查询这两个时间的数据,可是我数据库中的表中存储时间的字段是个char类型,怎么写这个查询语句呢?
Table(ID,DTIME)中的DTIME是char类型

解决方案 »

  1.   

    select * from tb where cast(rtrim(dtime) as datetime) between '2010-4-1' and '2010-4-18'
      

  2.   


    select * from tb where convert(datetime,dtime,120) between '2004-4-1' and '2010-4-18'
      

  3.   

    --如果你的dtime列保存的是如下的标准格式(单号月,日都补上了0):'2010-04-01' , '2010-04-18'
    select * from tb where DTIME between '2010-04-01' and '2010-04-18'--否则,建议用如下的语句:
    select * from tb where cast(DTIME as datetime) between '2010-04-01' and '2010-04-18'