需要在table表中查特定时间的信息(假定时间为sysdate吧)~如果时间不存在,则查找特定时间-1天的信息(即sysdate-1的信息),请问怎么查找呢?~~~select * from table where rq=(select distinct decode(rq,sysdate,syadate,sysdate-1) from table)~~~这样好像不行哎~~那位高人帮帮忙~~先谢谢了~

解决方案 »

  1.   


    select * from table 
    where rq=(case when 
                       (select Count(1) from table where rq=sysdate)>0 
                   then sysdate 
              else sysdate-1 
              end)
    ;
      

  2.   

    rq 保存的精度是什么 是到年月日时分秒还是年月日
    select * from table where rq in(select distinct decode(rq,sysdate,syadate,sysdate-1) from table)
      

  3.   

    这样试过了,假如不存在的话可以的,但是sysdate在表中存在的话就会返回sysdate和sysdate-1对应的信息了~~
      

  4.   

    O(∩_∩)O谢谢gelyon了~就是这个效果,好厉害呀~~~我什么时候跟你一样厉害呢?~~~~(*^__^*) 嘻嘻……