Linux 拨号vps windows公众号手机端

oracle lag函数的用法是什么

lewis 9年前 (2016-09-13) 阅读数 8 #VPS/云服务器
文章标签 oracle

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;

这将返回每个员工的入职日期和上一次调薪日期。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门