SqlServer2012中LEAD函数简单分析
LEAD函数简单点说,就是把下一行的某列数据提取到当前行来显示,看示例更能解释清楚,先看测试用脚本
DECLARE @TestData TABLE(
ID INT IDENTITY(1,1),
Department VARCHAR(20),
LastName VARCHAR(20),
Rate FLOAT
)
INSERT INTO @TestData(Department,LastName,Rate)
SELECT Document Control , Arifin ,17.7885 UNION ALL
SELECT Document Control , Norred ,16.8269 UNION ALL
SELECT Document Control , Kharatishvili ,16.8269 UNION ALL
SELECT Information Services , Chai ,10.25 UNION ALL
SELECT Information Services , Berge ,10.25 UNION ALL
SELECT Information Services , Trenary ,50.4808 UNION ALL
SELECT Information Services , Conroy ,39.6635 UNION ALL
SELECT Information Services , Ajenstat ,38.4615 UNION ALL
SELECT Information Services , Wilson ,38.4615 UNION ALL
SELECT Information Services , Connelly ,32.4519 UNION ALL
SELECT Information Services , Meyyappan ,32.4519
SELECT * FROM @TestData
以上是原始数据,下边应用LEAD函数,看下怎么把其它行的数据提取到当前行显示的
可以看到,LEAD函数把ID为2的那一行的LastName值提取到第一行显示为新列NEXTUser,就这么个功能
下边这个是间隔两行提取数据,就是把第三行的数据提取到当前行,其它行以次累推,看图
这个函数一共接受三个参数,第一个是表达式,以上示例都使用的字段,还可以是其它有效的表达式,第二个参数是offset,即间隔多少行取数据,第三个是默认的间隔,即当没有指定offset时以此为准
举个例子,以上述代码为例
LEAD(LastName,2,0)
当没有指定那个2的时候,则以间隔0行为准,当有指定那个2的时候则间隔2行取数据,所以,往往第三个参数可以不指定,效果是一样的,如下图
与LEAD函数相对应的还有一个函数,LAG,看下图效果
如上图所示,这个函数是从上行取数据,其它间隔参数的意义一样,LEAD是从下行取数据,TAG相反是上行取数据,写到这里我就再想,如果指定负数,是不是就可以合并为一个函数了?试下想法:
报错,offset参数不能为负,哥不作评论,,,The End
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 SqlServer2012中LEAD函数简单分析
相关文章
- listagg within group函数的作用_oracletochar函数
- Power Query用自定义函数(筛选前N名)
- linux中getchar函数用法,linux getchar函数使用
- 【组合数学】生成函数 ( 生成函数示例 | 给定通项公式求生成函数 | 给定生成函数求通项公式 )
- 【Kotlin 协程】协程中的多路复用技术 ② ( select 函数原型 | SelectClauseN 事件 | 查看挂起函数是否支持 select )
- WordPress 5.9 提供了 PHP 8 新增的三个字符串函数的 polyfill
- mysql时间戳格式化函数from_unixtime使用的简单说明
- Oracle的substr和instr函数简单用法
- Oracle的REGEXP_SUBSTR函数简单用法详解数据库
- python 函数参数传递的问题详解程序员
- js的函数定义详解编程语言
- MySQL中简单易用的字符串函数(mysql取字符串函数)
- 函数初探Linux中atoi函数(linuxatoi)
- MySQL 的数组函数变得更简单(mysql数组函数)
- MySQL数据库:实现分页函数的简单方法(mysql数据库分页函数)
- MySQL 使用分组函数的简单操作指南(mysql分组函数)
- 函数SQL Server中的转换函数简单易用(sqlserver中转换)
- 技巧提升效率Oracle内置函数的简单技巧使用(oracle内置函数常用)
- MySQL中Trim函数简单易用的字符串处理函数(mysql中trim函数)
- MySQL聚合函数SUM让数据统计更简单(mysql中sunm)
- Oracle两列取消函数一次解决(oracle两列取消函数)
- 探索Oracle中的XOR函数(oracle xor函数)
- FpHtmlEnCode函数之标题过滤特殊符号的代码
- 通过javascript的匿名函数来分析几段简单有趣的代码
- php初始化对象和析构函数的简单实例
- 详解JS函数重载
- JavaScript使用setInterval()函数实现简单轮询操作的方法