首先我们创建一个表user_info表:

CREATE TABLEuser_info(user_id NUMBER(11) primary key, user_name VARCHAR2(14), user_age NUMBER(4),user_birthday DATE);

插入一些数据用于测试,如下:
测试数据截图:

前期工作准备完成,接下来就准备测试这些函数了!

函数简介:
lag()和lead()这两个函数可以查询我们得到的结果集上下偏移相应行数的相应的结果。
形象的说明如下:

lag()函数
查询当前行向上偏移n行对应的结果
该函数有三个参数:第一个为待查询的参数列名,第二个为向上偏移的位数,第三个参数为超出最上面边界的默认值。
看如下代码:

查询向上偏移 1 位的年龄、

SELECT user_id,user_age,lag(user_age, 1, 0) over(ORDER BY user_id) RESULT
FROM user_info;

lag函数运行图示

lead()函数:
查询当前行向下偏移n行对应的结果
该函数有三个参数:第一个为待查询的参数列名,第二个为向下偏移的位数,第三个参数为超出最下面边界的默认值。
如下代码:

查询向下偏移 2 位的年龄

SELECT user_id,user_age,lead(user_age, 2, 0) over(ORDER BY user_id)FROM user_info;

LEAD()函数图示

SQL中lag()和lead()函数使用相关推荐

  1. oracle lead 方法,Oracle SQL之lag()和lead()函数使用详解

    首先我们创建一个表user_info表: CREATE TABLE user_info(user_id NUMBER(11) primary key, user_name VARCHAR2(14), ...

  2. lag与lead函数

    lag与lead函数 是跟偏移量相关的两个分析函数,通过这两个函数可以再一次查询中取出同一字段的前N行数据(lag)和 后N行的数据(lead)做为独立的列,从而更方便的进行数据过滤.这种操作可以代替 ...

  3. [MSSQL]也说SQL中显示星期几函数

    网上盛传着三个版本,分别来看下 版本1 http://bernardstudios.com/select-day-of-week-name-using-t-sql/ SELECT CASE (DATE ...

  4. SQL中 NVL()函数的使用

    SQL中 NVL()函数的使用 1.nvl() 函数是空值判断函数,空值为 null 的空值 其表达式的值可以是数字型.字符型和日期型 1.NVL(表达式A,表达式B) 如果表达式A为空值( null ...

  5. oracle lag group,Oracle中的lag()和lead()函数的简单用法(统计增长率)

    这两个函数,是偏移量函数,其用途是:可以查出同一字段下一个值或上一个值,并作为新列存在表中. 准备数据 select t.row_id, t.product_code, t.product_price ...

  6. oracle中LAG()和LEAD()等分析统计函数的使用方法(统计月增长率)

    LAG()和LEAD()统计函数能够在一次查询中取出同一字段的前N行的数据和后N行的值.这样的操作能够使用对同样表的表连接来实现,只是使用LAG和 LEAD有更高的效率.下面整理的LAG()和LEAD ...

  7. oracle lag、lead函数

    over()表示Lag()与Lead()操作的数据都在over()的范围内,他里面可以使用partition by语句(用于分组) order by语句(用于排序).partition by a or ...

  8. SQL中的字符串截取函数

    字符串截取函数,也是我们在数据开发分析的过程中比较常用的函数,比较常用的函数,有四个 left().right().substr().substring_index() 函数. 一.left()函数 ...

  9. mysql lag over_数据库sql 使用 lag 和OVER 函数和 like 使用 小技巧

    1. sample 1: Lag()就是取当前顺序的上一行记录.结合over就是分组统计数据的. Lag()函数,就是去上N行的字段的数据. SQL> select * from x; A -- ...

最新文章

  1. RDKit | RDKit(2019.09)新增相似性图函数
  2. kettle spoon中“表输入”到“表输出”的乱码问题
  3. telegraf输出MySQL_如何使用Telegraf拖尾远程日志文件
  4. OS X开发:NSProgressIndicator进度指示器控件
  5. 巧解C语言运算符的优先级和结合性
  6. 解决:ClassNotFoundException: com.netflix.hystrix.contrib.javanica.aop.aspectj.HystrixCommandAspect
  7. 女人抛弃男人的唯一理由
  8. mysql中存储过程定义
  9. java9 32位官网下载_jdk1.9 32位官方下载
  10. 【转】密码破解全能工具:Hashcat密码破解攻略
  11. 阿里云服务器为何价格比较贵?
  12. js-鼠标事件-拖放图片(对鼠标事件进一步加深印象)
  13. 何文江先生出任创意信息集团总经理
  14. 青山绿水 峡谷奇观---野三坡之行(转)
  15. 祝爸爸妈妈中秋节快乐
  16. 程序员面试题精选(24):栈的push、pop序列
  17. MBTI16型人格测试思维导图 | 找到自己的类型
  18. c++和java学哪个好,c++和java区别 学哪个比较好
  19. Linux之LVM篇
  20. 通过apk签名使应用程序有系统权限

热门文章

  1. 神经网络与深度学习(三):如何提升神经网络学习效果
  2. GWAS分析中使用PCA校正群体分层
  3. 安装teleport 堡垒机服务器-基于v3.2.2版
  4. PHP中的FFmpeg安装及使用
  5. java计算机毕业设计健康食谱系统服务器端源码+mysql数据库+系统+lw文档+部署
  6. 开源免费,自己用Java撸一个在线云盘
  7. 网络攻击损失不容小觑
  8. 计算机网络的性能(速率、带宽、吞吐量、时延、时延带宽积、往返时间RTT、利用率)
  9. css 文字动态特效
  10. 更相减损法(求最大公约数)