我要显示的就是今天到后面30天的数据, 最主要的没有数据用0表示,这个是最重要的,  查询是根据一个时间来查询  。 最好用to_char 来写

解决方案 »

  1.   

    select column1,column2,nvl(column3,0),column4 from table where column4>=sysdate and column4<=(select sysdate+30 from dual)
      

  2.   


    --应该是从今天往前30天吧?
    select b.v_date,nvl(a.KEY_column,0) KEY_column from Your_table a
      right join (select trunc(sysdate-30) v_date from dual connect by level<=30) b
      on (a.Date_column=b.v_date)
      order by b.v_date;
      

  3.   

      select a.data_time,要取的列名
      (select to_char(sysdate+rownum,'yyyymmdd') data_time from dual connect by level<=30) a left join
      你的表 b on a.data_time = b.data_time
      order by a.data_time