select RETURNTIME,RETURNSTATION from B_LEASEINFOHIS 
where RETURNTIME >=to_date('2014-05-01','YYYY-MM-DD') and RETURNTIME <= to_date('2014-05-03','YYYY-MM-DD')
RETURNTIME 是date字段,我把字符串用to-date转为日期与RETURNTIME 比较,但我选出来的为什么只有5月2号一天的数据啊

解决方案 »

  1.   

    to_date('2014-05-01','YYYY-MM-DD') 日期格式实际你的格式是 2014-05-01 00:00:00
    你的语句没问题,是可以查到2014-05-01 的数据,应该是库里面本来没有符合要求的数据
      

  2.   

    Quote: 引用 楼主 jdd519328384 的回复:

    select RETURNTIME,RETURNSTATION from B_LEASEINFOHIS 
    where RETURNTIME >=to_date('2014-05-01','YYYY-MM-DD') and RETURNTIME <= to_date('2014-05-03','YYYY-MM-DD')
    RETURNTIME 是date字段,我把字符串用to-date转为日期与RETURNTIME 比较,但我选出来的为什么只有5月2号一天的数据啊[/你期望是得到多少数据啊
      

  3.   

    用between。
    例:
    to_date(to_char(RETURNTIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('2014-05-01','YYYY-MM-DD') and to_date('2014-05-03','YYYY-MM-DD')
      

  4.   

    to_date('2014-05-03','YYYY-MM-DD')     2014-05-03 00:00:00RETURNTIME >=to_date('2014-05-01','YYYY-MM-DD')
    1号的数据应该是有的RETURNTIME <= to_date('2014-05-03','YYYY-MM-DD')
    这个条件,如果希望查到3号的数据,修改为
    RETURNTIME < to_date('2014-05-03','YYYY-MM-DD') +1
      

  5.   

    1.首先确定有没有1号的数据。
    2.确定存储的数据有没有时间,如果存储了时间 5月3号的基本上查不到
    写成 RETURNTIME >= date'2014-5-1' and RETURNTIME< date'2014-5-4'
      

  6.   

    等号是可以使用的,所以要在数据库里查询有没有2014-5-1号这条记录,应该是没有这条记录,
    然后你可以也将and 改用between来试试
      

  7.   

    SQL语句中使用to_date()函数查询数据时需注意:
    to_date('2014-05-01','yyyy-mm-dd')默认是取‘2014-05-01 00:00:00’,因此如果要查出2014年5月1号到5月3号的数据,正确写法是:
        RETURNTIME >= to_date('2014-05-01','yyyy-mm-dd') and a < to_date('2014-05-04','yyyy-mm-dd')
    或 RETURNTIME >= to_date('2014-05-01','yyyy-mm-dd') and a < to_date('2014-05-03','yyyy-mm-dd')+1
    或 RETURNTIME >= to_date('2014-05-01 00:00:00','yyyy-mm-dd hh24:mi:ss') and a <= to_date('2014-05-03 23:59:59','yyyy-mm-dd hh24:mi:ss') 
      

  8.   

    这样改一下试试看,估计1号没有数据
    select RETURNTIME,RETURNSTATION from B_LEASEINFOHIS 
    where RETURNTIME >to_date('2014-04-30','YYYY-MM-DD') and RETURNTIME < to_date('2014-05-04','YYYY-MM-DD') ;