ead()是一个分析函数,适用于oracle 8i以后的版本,

使用这个函数,你可以一次性从表中查询多条记录,

而不需要进行表的自连接。

返回值:返回与当前行偏离offset行的列值。

语法:

lead ( expression [, offset [, default] ] )

over ( [ query_partition_clause ] order_by_clause )

expression :可以包含除了分析函数意外的任何oracle内置函数。

offset :可选项,表里偏移当前行的值,默认值为1。

default :可选项,如果offset值超出了当前表范围,就返回此值,默认值为null.

下面是一个实例:

1.

with orders as(

select to_date('25-09-2007','dd-mm-yyyy') order_date,1000 product_id,20 qty from dual union all

select to_date('26-09-2007','dd-mm-yyyy'),2000,15 from dual union all

select to_date('27-09-2007','dd-mm-yyyy'),1000,8 from dual union all

select to_date('28-09-2007','dd-mm-yyyy'),2000,12 from dual union all

select to_date('29-09-2007','dd-mm-yyyy'),2000,2 from dual union all

select to_date('30-09-2007','dd-mm-yyyy'),1000,4 from dual)

select product_id,order_date,

lead(order_date,1) over (order by order_date) next_order_date

from orders;

PRODUCT_ID ORDER_DATE NEXT_ORDER_DATE

---------- ----------- ---------------

1000 2007-9-25 2007-9-26

2000 2007-9-26 2007-9-27

1000 2007-9-27 2007-9-28

2000 2007-9-28 2007-9-29

2000 2007-9-29 2007-9-30

1000 2007-9-30

--

因为offset值为1,所以查询出了下一个order_date

如果我们将offset设为2,那么会查询出往下第二个order_date,

如果offset为3呢,将会查询出往下第三个order_date,

......

2.使用上面的数据。

select product_id,order_date,

lead(sum(qty),1,0) over (order by order_date) sum_next_qty

from orders

group by product_id,order_date;

PRODUCT_ID ORDER_DATE SUM_NEXT_QTY

---------- ----------- ------------

1000 2007-9-25 8

1000 2007-9-27 4

1000 2007-9-30 15

2000 2007-9-26 12

2000 2007-9-28 2

2000 2007-9-29 0

我们先按product_id分组,再按order_date分组

oracle中lead函数,oracle lead()函数 | 学步园相关推荐

  1. oracle中类似indexof用法_instr函数

    oracle中类似indexof用法_instr函数 [sql] 在oracle中没有indexof()函数 但是提供了一个 instr() 方法 具体用法: select instr('保定市南市区 ...

  2. 【转】Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理

    Oracle 中的 TO_DATE 和 TO_CHAR 函数 oracle 中 TO_DATE 函数的时间格式,以 2008-09-10 23:45:56 为例 格式 说明 显示值 备注 Year(年 ...

  3. Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理

    Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理 Oracle 中的 TO_DATE 和 TO_CHAR 函数 oracle 中 TO_DATE 函数的时间格式,以 2008-0 ...

  4. mysql中sql语句中常见的group_concat()函数意思以及用法,oracle中与其一样的功能函数是wmsys.wm_concat()

    1.group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果.比较抽象,难以理解. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一 ...

  5. oracle中获取当前时间的函数

    在 Oracle 中,你可以使用 SYSDATE 函数来获取当前时间. 例如: SELECT SYSDATE FROM DUAL; 这会在输出中显示当前时间. 你也可以使用 CURRENT_TIMES ...

  6. oracle 中WITH AS,oracle的with as用法

    转自:https://www.cnblogs.com/linjiqin/archive/2013/06/24/3152667.html –针对多个别名 with tmp as (select * fr ...

  7. oracle中聚合比较函数,Oracle聚合函数/分析函数

    oracle函数分两类:单行函数.多行函数.多行函数又分为聚合函数.组合函数,参数为数组,数据大小为记录数,这种数组不是普通高级语言的数组,是一种虚拟数组,当记录数大时,会将数据写入硬盘,内存中放的只 ...

  8. Oracle中的within,Oracle函数 --聚合函数中的语法within group

    Oracle的聚合函数一般与group by 联合使用,但一般通过group by 聚合 但某些聚合函数会后跟 WITHIN GROUP (ORDER BY expr [ DESC | ASC ] [ ...

  9. oracle中正则表达式规则,Oracle中的正则表达式(及函数)详解

    1.概述 相信大家对正则表达式都不陌生,从linux下的命令到Java等编程语言,正则表达式无处不在,虽然我们实际使用的时候也并不一定太多,但是当我们要处理字符串时,它确实是一个强大的工具. 上一篇文 ...

  10. oracle中的to_number,Oracle中to_number()函数的用法

    to_number()函数是oracle中常用的类型转换函数之一,是将一些处理过的按一定格式编排过的字符串变回数值型的格式. 1.to_number()函数可以将char或varchar2类型的str ...

最新文章

  1. kosaraju算法
  2. 计算机专业英语文章翻译,计算机专业英语英汉双语文章翻译
  3. Media Player网页播放音频,视频,图片总汇
  4. React UI 库:React Suite 3.7.8 版本更新
  5. jsfiddle网站介绍
  6. pycharm 无法导包、无法导入模块(模块名不能含有连接符“-”)
  7. python求均方根误差_python之MSE、MAE、RMSE的使用
  8. C语言计算分段函数pta,PTA浙大版《C语言程序设计(第3版)》题目集 练习2-11 计算分段函数[2] (10分)...
  9. 15 设置系统分词器
  10. ffmpeg之图片转gif
  11. Pandas系列(十三)分层索引MultiIndex
  12. 微信小程序抖音实战-支持手机播放小视频
  13. 2021年下半年软考系统集成项目管理工程师真题及答案解析
  14. 一峰说:SpringCloud的基础了解和使用
  15. FineReport中cjk编码转换
  16. 网吧服务器安装操作系统,网吧无盘技术的安装与使用---服务器的操作系统为为wind...
  17. Python自动化实践
  18. Android 加固应用
  19. 计算机光盘模式,Win7系统自带光盘刻录功能如何使用?
  20. 有道云笔记网页剪chrome登录不上,反复登录问题

热门文章

  1. 程序 峰谷值 提取_ABAQUS:Python后处理—用excel提取位移、体积、应变等变化(一)...
  2. 一个域名可以绑定多个公众号_如何在同一个浏览器中同时登录多个公众号?
  3. python多个分隔符分割字符串_Python中带有多个分隔符的拆分字符串
  4. 如何判断一个类是否是线程安全(可重入)的?
  5. matlab 低秩矩阵分解,低秩分解的matlab代码看不懂,分解的两个矩阵在哪呀??...
  6. LCD液晶屏静电防护方案
  7. 聚焦可信AI与产业应用,百度联合发起千言计划实现情感分析2.0升级
  8. 求职中最吃香的编程语言:JavaScript、Java 和 Python
  9. linux base64 文件大小,linux下使用base64进行加密和解密
  10. python中readline的用法_python中readline的用法