oracle lead 使用

轉自:http://blog.csdn.net/maqinqin/archive/2008/11/17/3320247.aspx

 

oracle 統計分析函數 lead

     語法結構:

     lead(value_expr [,offset][,default]) over([query_partition_clause] order by Order_by_clause)

     參數說明:

     value_expr 值表達式,通常是字段,也可是是表達式。value_expr本身不支持分析函數,也就是lead不支持多層調用。
     offset 偏移,應該是很熟悉的數學概念了,或者是相對偏移,表格來開當前行的第offset行,如果offset是整數就表示是順序下的前第n行,如果是負數就是往後第n行。 如果不提供這個參數,就是默認爲1.
      default 默認值,如果沒有找到,應該返回什麼值的意思,有點類似nvl(col,value)。如果沒有設置,且找不到,那麼就返回Null
      over  可以簡單地翻譯爲在什麼。。。的基礎之上
      query_partition_clause  分區語句,對結果集合分區的語句,是可選的,如果沒有就是所有的一個分區。
      Order_by_clause 排序語句 必須需要 ,形如order by xxx desc/asc

 

     解釋示例:
     SQL> select * from test_value;
       
              MONS JJR               CJL       CJJE
        ---------- ---------- ---------- ----------
            200801 LZF               250       1999
            200802 LZF               200       2000
            200803 LZF               300       1000
            200804 LZF                23        189
            200805 LZF               356        456
            200806 LZF               100        200
            200807 LZF               600        700
            200808 LZF                23        123
            200809 LZF               400        500
       
        9 rows selected
       
        SQL>
        SQL> select rownum 序號,Mons,cjl cjl_01,
          2  lead(cjl,1) over (order by mons desc) cjl_02,
          3  lead(cjl,2) over (order by mons desc) cjl_03,
          4  lead(cjl,3) over (order by mons desc) cjl_04,
          5  lead(cjl,4) over (order by mons desc) cjl_05,
          6  lead(cjl,5) over (order by mons desc) cjl_06,
          7  lead(cjl,6) over (order by mons desc) cjl_07,
          8  lead(cjl,7) over (order by mons desc) cjl_08,
          9  lead(cjl,8) over (order by mons desc) cjl_09
         10   from test_value

              序號       MONS     CJL_01     CJL_02     CJL_03     CJL_04     CJL_05     CJL_06     CJL_07     CJL_08     CJL_09
        ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
                 9     200809        400         23        600        100        356         23        300        200        250
                 8     200808         23        600        100        356         23        300        200        250
                 7     200807        600        100        356         23        300        200        250           
                 6     200806        100        356         23        300        200        250                      
                 5     200805        356         23        300        200        250                                 
                 4     200804         23        300        200        250                                            
                 3     200803        300        200        250                                                       
                 2     200802        200        250                                                                  
                 1     200801        250                  

 

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/maqinqin/archive/2008/11/17/3320247.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章