从你的语句看,date应该是varchar类型的,oracle里面也能比较字符类型,用第一条语句,oracle应该也可以执行

解决方案 »

  1.   

    oracle 里改变日期显示格式就可以了:一段时间内的所有数据
    Sql Server:
    select * from table where date > '2005-1-1' and date < '2006-1-1'Oracle:
    alter session set nls_date_format='yyyy-mm-dd';select * from table where date > '2005-1-1' and date < '2006-1-1'
      

  2.   

    njhart2003() 
    你这个方法,在使用insert,update的时候需要to_date不?传递参数假设都为string类型过去
    直接插入会不会出错?
      

  3.   

    只要alter session set nls_date_format='yyyy-mm-dd';设置过了,在insert和update的时候就不需要to_date()了
      

  4.   

    下面两句并不是相等的。select * from table where date > '2005-1-1' and date < '2006-1-1'select * from table where date between to_date('2005-1-1','yyyy-mm-dd') and to_date('2006-1-1','yyyy-mm-dd')