select * from tabname where date between to_date('2003-12-23 12:00','yyyy-mm-dd hh24:mi') and to_date('2003-12-24 11:00','yyyy-mm-dd hh24:mi')

解决方案 »

  1.   

    beckhambobo(beckham),你好!由于'2003-12-23'只是一个变量,我是想知道,如何使'2003-12-23'连接时间值,且如何加一天!谢谢!
      

  2.   

    你所谓的“使……连接时间值”,是什么意思?
    “加一天”:TO_DATE('2003-12-23', 'YYYY-MM-DD') + 1
      

  3.   

    Date+或-都可以,单位是天,如果不是天可以将分,小时或秒转换成天。
      

  4.   

    就是说字符串的值是'200-12-23',而此时后面还要再连接上时间,成为'2003-12-23 11:00',如何写呢?且如果不是字符串,而是日期date型'2003-11-23'的话,又怎么连接时间'11:00',成为'2003-12-23 11:00'呢?
      

  5.   

    字符:str1||str2
    日期:to_char(yourDate,'yyyy-mm-dd')||' 11:00'
      

  6.   

    declare
    v_date varchar2:='2003-12-23';
    v_time varchar2:='11:00';
    str varchar2(50);
    begin
    str:='select * into ...from tabname where date=to_date('''||v_date||' '||v_time||''',''yyyy-mm-dd hh24:mi'')';
    execute immediate str;
    end;
    /问题二:
    to_date(to_char(v_date,'yyyy-mm-dd')||to_char(v_time,'hh24:mi'),'yyyy-mm-ddhh24mi')
      

  7.   

    看看这个.
    在 Oracle 中处理日期大全
    http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=185465