溫馨提示×

oracle lag函數的用法是什么

小億
543
2024-03-11 15:14:26
欄目: 云計算

LAG函數是Oracle SQL中的窗口函數,用于獲取當前行之前指定行數的值。

其基本語法如下:

LAG (expr, offset, default) OVER (PARTITION BY partition_col ORDER BY order_col)
  • expr: 要獲取值的列或表達式
  • offset: 要獲取的行數,可以為負數表示獲取當前行之后的行
  • default: 如果沒有找到對應的值,返回的默認值
  • PARTITION BY: 可選參數,用于分區數據
  • ORDER BY: 指定要排序的列

例如,假設有一個名為employees的表,包含字段employee_id, last_name, hire_date和salary,想要查詢每個員工的入職日期和上一次調薪日期,可以使用LAG函數:

SELECT employee_id, last_name, hire_date, salary,
       LAG(hire_date, 1, NULL) OVER (ORDER BY hire_date) AS prev_hire_date,
       LAG(salary, 1, NULL) OVER (ORDER BY hire_date) AS prev_salary
FROM employees;

這將返回每個員工的入職日期和上一次調薪日期。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女