關於lag函式的用法
參考oracle 10g手冊,明白了lag函式的基本用法:
LAG
Syntax
Description of the illustration lag.gif
See Also:
"Analytic Functions" for information on syntax, semantics, and restrictions, including valid forms ofvalue_expr
Purpose
LAG
is an analytic function. It provides access to more than one row of a table at the same time without a self join. Given a series of rows returned from a query and a position of the cursor, LAG
provides access to a row at a given physical offset prior to that position.
If you do not specify offset
, then its default is 1. The optional default
value is returned if the offset goes beyond the scope of the window. If you do not specify default
, then its default is null.
You cannot use LAG
or any other analytic function for value_expr
. That is, you cannot nest analytic functions, but you can use other built-in function expressions for value_expr
.
Examples
The following example provides, for each salesperson in the employees
table, the salary of the employee hired just before:
SELECT last_name, hire_date, salary, LAG(salary, 1, 0) OVER (ORDER BY hire_date) AS prev_sal FROM employees WHERE job_id = 'PU_CLERK'; LAST_NAME HIRE_DATE SALARY PREV_SAL ------------------------- --------- ---------- ---------- Khoo 18-MAY-95 3100 0 Tobias 24-JUL-97 2800 3100 Baida 24-DEC-97 2900 2800 Himuro 15-NOV-98 2600 2900 Colmenares 10-AUG-99 2500 2600
就是說lag將結果集的某個欄位進行偏移(offset),需要指定要偏移的欄位,
偏移行數,預設值。注意格式是lag(欄位,偏移行數,預設值 ) over(partition by xx order by xx)。[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7425608/viewspace-997260/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 分析函式 - LAG函式
- lead和lag函式函式
- lag和lead函式函式
- oracle之函式LAG,LEADOracle函式
- ORALCE函式:LAG()和LEAD() 分析函式詳解函式
- 【分析函式】Oracle分析函式之LAG和LEAD函式Oracle
- 摘-- 關於在函式或過程中 ref cursor 的用法函式
- oracle函式之lag和leadOracle函式
- oracle中lead和lag函式Oracle函式
- 使用LAG和LEAD函式統計函式
- oracle中LAG()和LEAD()等分析統計函式的用法(統計月增長率)Oracle函式
- 關於count函式的理解函式
- ascii函式和substr函式的用法ASCII函式
- mysql實現oracle的lead和lag函式功能MySqlOracle函式
- oracle lag與lead分析函式簡介Oracle函式
- GetModuleFileName函式的用法函式
- createStyleSheet()函式的用法函式
- qsort函式的用法函式
- COALESCE函式的用法。函式
- PHP關於反斜槓處理函式addslashes()和stripslashes()的用法PHP函式
- 關於scanf函式的問題函式
- 關於函式索引的問題?函式索引
- Oracle中關於函式的使用Oracle函式
- 關於qt中的tr()函式QT函式
- 關於Oracle取整的函式Oracle函式
- 關於建構函式與解構函式的分享函式
- 關於函式指標函式指標
- Hive 分析函式lead、lag例項應用Hive函式
- PHP 手冊中的匿名函式關聯用法分析PHP函式
- Instr函式的用法函式
- 【Oracle的NVL函式用法】Oracle函式
- fork()函式的基本用法函式
- Oracle dump函式的用法Oracle函式
- openat()函式的用法示例函式
- Oracle trunc()函式的用法Oracle函式
- Oracle 函式 Translate 的用法Oracle函式
- oracle的with函式用法示例Oracle函式
- Translate函式用法函式