程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle學習筆記之DECODE及常用窗口函數

Oracle學習筆記之DECODE及常用窗口函數

編輯:Oracle數據庫基礎

Oracle數據庫用DECODE實現行列轉換以及常用窗口函數的相關知識是本文我們主要要介紹的內容,希望本次的介紹能夠對您有所收獲!

利用DECODE進行行列轉換

代碼如下:

  1. select '工資' 部門,  
  2. sum(decode(k.deptno,'10',k.g)) A  
  3. ,sum(decode(k.deptno,'20',k.g)) B  
  4. ,sum(decode(k.deptno,'30',k.g)) C  
  5. ,sum(decode(k.deptno,'40',k.g)) D  
  6. from (select sum(e.sal) g,e.deptno from emp e  
  7. left join dept d on d.deptno=e.empno  
  8. group by e.deptno) k; 

Oracle 窗口函數

  1. rank() over(order by emp_age)  
  2. dense_rank() over(order by emp_age)  
  3. row_number() over(order by emp_age)  
  4. avg(age) over(partition by position) avg  
  5. sum(age) over(order by age rows between 1 preceding and 1 following)--獲取當前記錄的前一行以及後一行  
  6. count(1) over(order by age range between 1 preceding and 1 following) c--差在一歲的數據。 

關於Oracle數據庫DECODE及常用窗口函數的相關知識就介紹到這裡了,希望本次的介紹能夠對您有所收獲!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved