我在SQL*PLUS里查询这个语句,报错,
MYDate是tab表里的一个字段,是字符串的数据类型,格式为"2007-03-20 12:30:50"我想查某一时间段的数据呀..
select * from tab where TO_DATE(MYDate,'yyyy-MM-dd') < '2007-03-20';ORA-01830: 日期格式图片在转换整个输入字符串之前结束

解决方案 »

  1.   

    select * from tab where to_char(MYDate,'yyyy-mm-dd') < '2007-03-20';
      

  2.   

    楼上的转成char就没法比较时间大小了
      

  3.   

    谁说转成char就不能比较时间大小了 ,你自己测试一下再说
      

  4.   

    select * from tab where to_char(MYDate,'yyyy-mm-dd') < '2007-03-20';
      

  5.   

    这样:
    select * from tab where TO_DATE(MYDate,'yyyy-mm-dd hh24:mi:ss') < to_date('2007-03-20 23:33:33','yyyy-mm-dd hh24:mi:ss');
      

  6.   

    楼上的对,两边都要是date类型(同类型)的才能比较。
      

  7.   


    select * from tab where TO_DATE(MYDate,'yyyy-mm-dd hh24:mi:ss') < to_date('2007-03-20','yyyy-mm-dd'
      

  8.   

    select * from tab where MYDate < to_date('2007-03-20','yyyy-mm-dd')
    刚学的