- 浏览: 75415 次
- 性别:
- 来自: 上海
文章分类
最新评论
原文:http://blog.csdn.net/pilearn/article/details/6841764
这两个函数,是偏移量函数,其用途是:可以查出同一字段下一个值或上一个值,并作为新列存在表中。
1。 select * from tache_columns
TCH_ID COL_NAME_CN COL_VALUE
------------- -------------------------------------------------------------------------------- ------
1 张三 10
2 李四 21
3 王五 23
1 aaa 14
1 bbb 20
2。select t.tch_id,
t.col_name_cn,
t.col_value,
lead(t.col_value,1,null) over(partition by t.tch_id order by t.col_value) sal
from tache_columns t;
注:lead函数是先按tch_id分组,按col_val排序,并把当前行col_value的下一个值放到sal中,比如:
colvalue=10的下一个值是14,colvalue=14 的下一个值是20。函数中的null是当没有下一个值时用null代替,当然也可以用其他值替换NULL.
3。select t.tch_id,
t.col_name_cn,
t.col_value,
lag(t.col_value,1,null) over(partition by t.tch_id order by t.col_value) sal
from tache_columns t
lag与lead相反。函数中的1是可以修改的。具体可以运行查看
4。select t.tch_id,
t.col_name_cn,
t.col_value,
lag(t.col_value) over(order by t.col_value) sal
from tache_columns t
当然也可以不要partition,lag的默认参数是1
发表评论
-
linux启动oracle
2014-11-07 17:53 5801:su - oracle 2: lsnrctl star ... -
oracle中job的interval设置方法
2013-01-08 14:11 1755oracle中job的interval设置方法 INTER ... -
Exception:com.mchange.v2.c3p0.impl.NewProxyConnection cannot be cast to oracle.j
2012-10-25 10:48 2712Exception:com.mchange.v2.c3p0.i ... -
oracle中的单行函数
2012-03-05 18:27 852单行函数的特征:1、单行函数对单行操作2、每行返回一个结果3、 ... -
oracle trunc to_char
2012-03-05 16:31 1072select to_char(sysdate,'yyyy') ... -
详细介绍ORACLE sqlplus命令(转)
2012-02-24 17:44 839一、ORACLE的启动和关闭1、在单机环境下要想启动或关闭 ... -
Oracle 使用SQL 查看表结构和索引(转)
2012-02-24 16:29 1025select dbms_metadata.get_ddl('T ... -
Oracle创建用户、表空间、导入导出(转)
2012-02-24 15:58 644//创建临时表空间create t ... -
Oracle删除重复行
2012-02-23 17:53 860第一种情况是:数据的完全重复第二种情况是:部分数据的重复第一种 ... -
Oracle函数大全(转)
2012-02-23 13:37 720来源:http://www.cnblogs.com/lulup ... -
详细介绍ORACLE sqlplus命令(转)
2012-02-23 13:34 1012来源:http://www.cnblogs.com ... -
ora-12154错误解决
2012-02-27 12:01 1832plsql developer 报:ora-12154错误 -
oracle 分页sql 语句比较
2012-02-23 17:53 842说说oracle分页的sql语句,分排序和不排序两种。 当 ... -
oracle 几个常用语句
2012-02-24 15:59 8091、复制表结构 create table tabl ... -
sql统计相同项个数并按名次显示
2012-02-16 16:40 1243现在有如下这样一个表: A表 ID Name time --- ... -
解决plsql中文乱码的问题
2012-02-16 16:38 1034xp 系统, plsql 中文显示乱码。 上网查找解决办法。1 ... -
Oracle排序
2012-02-16 16:35 871Oracle9i之前,中文是按 ... -
优化你的开发工具之-----PL/SQL
2012-02-16 16:34 1008优化你的开发工具之-----PL/SQL http://ww ... -
回写保存时报 错误代码: OPR4ONWY:U9IM8TAC:OI2DL65P
2012-02-16 16:19 2675写入到服务器时出错。 请检查以确保您已输入合适的值。 如果仍 ... -
如何更换BIEE登录界面样式
2012-02-15 17:55 1193拷贝productmessages.xml和logonmess ...
相关推荐
Lag和Lead函数可以在一次查询中取出同一字段的前N行的数据和后N行的值。这种操作可以使用对相同表的表连接来实现,不过使用LAG和LEAD有更高的效率。 代码如下:CREATE TABLE salaryByMonth( employeeNo varchar2(20)...
7. **分组和窗口函数**:如RANK、DENSE_RANK、LAG、LEAD,用于数据分析,特别是在复杂的排序和分组场景下。 8. **其他特殊函数**:如DBMS_OUTPUT.PUT_LINE、USER、SYSDUMMY1,分别用于输出信息、获取当前用户信息或...
**分析函数**如`RANK`、`DENSE_RANK`、`ROW_NUMBER`和`LAG`、`LEAD`等,提供了一种窗口函数的功能。它们可以在结果集的每一行上执行计算,而不仅仅是在分组级别上。例如,`RANK`可以为每行分配一个唯一的排名,`LAG`...
- 窗口函数包括`LEAD()`, `LAG()`, `SUM() OVER()`, `AVG() OVER()`, 等等,它们允许在特定的行窗口内进行计算。 5. **报表函数** - 报表函数如`CUME_DIST()`和`PERCENT_RANK()`,提供累积分布和百分位排名信息...
例如,`RANK()` 和 `DENSE_RANK()` 可用于为数据集中的每一行分配一个排名,`LAG()` 和 `LEAD()` 则可以访问当前行的前一行或后一行值,`AVG() OVER()` 可以计算分区内的平均值。 2. **聚合函数**:这些函数用于对...
"ORACLE函数大全.zip"这个压缩包文件很可能包含了对Oracle数据库系统中各种函数的详细说明,包括其属性、用法和功能。下面,我们将深入探讨一些常见的Oracle函数。 1. **转换函数**: - `TO_CHAR`:将数值或日期...
"Oracle函数大全(分类显示)"这个资源显然是为了帮助开发者更好地理解和使用Oracle中的各种函数。下面,我们将详细介绍Oracle数据库中的一些主要函数类别及其应用场景。 1. **数值函数**: - `ROUND`:对数字进行四...
比如,`RANK()`和`DENSE_RANK()`为每个组内的行分配唯一的排名,`LEAD()`和`LAG()`可以访问当前行的前后行数据,`ROW_NUMBER()`为每行分配唯一的数字。"oracle函数介绍(6) 著名函数之分析函数.doc","oracle函数介绍...
LEAD函数与LAG相反,它返回当前行之后n行的列值。 以上这些分析函数极大地增强了Oracle SQL的功能,允许用户在单个查询中处理复杂的分析任务,无需多次查询或临时表。通过巧妙地组合这些函数,我们可以实现诸如...
4. "oracle函数介绍(5) 分析函数简述.doc":分析函数,如RANK()、ROW_NUMBER()和LEAD/LAG(),在处理分组数据时非常有用,可以提供行级别的排序和计算。 5. "oracle函数介绍(6) 著名函数之分析函数.doc"和"oracle...
10. **窗口函数**:ROW_NUMBER(), RANK(), DENSE_RANK(), LAG(), LEAD()等在分组查询和数据分析中提供了更高级的计算能力。 通过"三思笔记之Oracle函数",读者可以全面了解并掌握Oracle数据库中的各种函数,提升在...
6. **其他高级函数**:包括聚合函数(如`COUNT()`, `SUM()`, `AVG()`, `MAX()`, `MIN()`)、分析函数(如`RANK()`, `LEAD()`, `LAG()`)以及自定义的用户定义函数(UDF)。 在"oracle函数.chm"中,你可能会找到每个...
例如,可以使用 Rollup 函数对数据进行分组和汇总,使用 Rank 函数对数据进行排名,使用 Lag 和 Lead 函数对数据进行延迟和前导操作,使用 Sum 和 Avg 函数对数据进行汇总和平均计算,使用 Ratio_to_Report 函数对...
7. 分组和窗口函数:GROUP BY用于分组数据,RANK(), DENSE_RANK(), ROW_NUMBER()用于排序和排名,LEAD()和LAG()获取相邻行的值。 8. 模式匹配函数:LIKE和INSTR()用于在WHERE子句中进行模式匹配。 9. 随机函数:...
- **取上下行数据分析函数lag()和lead()**: 返回当前行的前一行或后一行的值。 ### 第七章 其它函数 此外,Oracle还提供了许多其他类型的函数,例如与环境信息和条件判断相关的函数。 - **dump**: 返回有关列的...
4. LAG()和LEAD():这些函数可以访问当前行之前或之后的行的值,这对于分析趋势和比较相邻行的数据非常有用。 5. FIRST_VALUE()和LAST_VALUE():返回指定列在当前行所在窗口的第一行或最后一行的值。 6. AVG()、SUM...
11. **窗口函数**:ROW_NUMBER()、RANK()、DENSE_RANK()用于排序和分组,LEAD()和LAG()获取相邻行的值,FIRST_VALUE()和LAST_VALUE()获取分组的第一行和最后一行的值。 这些函数在实际数据库操作中发挥着至关重要的...
8. **LAG** 和 **LEAD**: LAG获取前一行的值,LEAD获取后一行的值,两者都用于访问数据窗口中的其他行。 **行号和分布函数**: 9. **ROW_NUMBER**: 为每个组内的行分配一个唯一的行号,按指定顺序排序。 10. **...