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

Oracle筆記-分析函數

編輯:關於Oracle數據庫

  第 12 章 分析函數

  12.1 分析函數如何工作

  語法

  FUNCTION_NAME(<參數>,…)

  OVER

  (<PARTITION BY 表達式,…> <ORDER BY 表達式 <ASC | DESC> <NULLS FIRST | NULLS LAST>> <WINDOWING子句>)

  PARTITION子句

  ORDER BY子句

  WINDOWING子句

  缺省時相當於RANGE UNBOUNDED PRECEDING

  1. 值域窗(RANGE WINDOW)

  RANGE N PRECEDING

  僅對數值或日期類型有效,選定窗為排序後當前行之前,某列(即排序列)值大於/小於(當前行該列值 –/+ N)的所有行,因此與ORDER BY子句有關系。

  2. 行窗(ROW WINDOW)

  ROWS N PRECEDING

  選定窗為當前行及之前N行。

  還可以加上BETWEEN AND 形式,例如RANGE BETWEEN m PRECEDING AND n FOLLOWING

  函數

  AVG(<distinct | all> expr)

  一組或選定窗中表達式的平均值

  CORR(expr, expr)

  即COVAR_POP(exp1,exp2) / (STDDEV_POP(expr1) * STDDEV_POP(expr2)),兩個表達式的互相關,-1(反相關) ~ 1(正相關),0表示不相關

  COUNT(<distinct> <*> <expr>)

  計數

  COVAR_POP(expr, expr)

  總體協方差

  COVAR_SAMP(expr, expr)

  樣本協方差

  CUME_DIST

  累積分布,即行在組中的相對位置,返回0 ~ 1

  DENSE_RANK

  行的相對排序(與ORDER BY搭配),相同的值具有一樣的序數(NULL計為相同),並不留空序數

  FIRST_VALUE

  一個組的第一個值

  LAG(expr, <offset>, <default>)

  訪問之前的行,OFFSET是缺省為1 的正數,表示相對行數,DEFAULT是當超出選定窗范圍時的返回值(如第一行不存在之前行)

  LAST_VALUE

  一個組的最後一個值

  LEAD(expr, <offset>, <default>)

  訪問之後的行,OFFSET是缺省為1 的正數,表示相對行數,DEFAULT是當超出選定窗范圍時的返回值(如最後行不存在之前行)

  MAXexpr)

  最大值

  MIN(expr)

  最小值

  NTILE(expr)

  • 首頁
  • 上一頁
  • 1
  • 2
  • 3
  • 4
  • 下一頁
  • 尾頁
  • 共4頁
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved