Oracle11gr2分析函数新特性(一)

2024-04-24 16:38

本文主要是介绍Oracle11gr2分析函数新特性(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载地址:http://yangtingkun.itpub.net/post/468/491115

11gr2中,Oracle分析函数的功能进一步增强。

这篇介绍新增的分析函数NTH_VALUE


以前版本的分析函数,提供了FIRST_VALUELAST_VALUE的功能,而11gr2中,Oracle增加了一个NTH_VALUE的功能,这个功能包含了FIRST_VALUELAST_VALUE的功能,还可以取任意的正数或倒数的没个记录。

简单看一个这个分析函数的用法:

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

SQL> create table t (id, name)
2 as select rownum, tablespace_name
3 from dba_tablespaces;

表已创建。

SQL> select * from t;

ID NAME
---------- ------------------------------
1 SYSTEM
2 SYSAUX
3 UNDOTBS1
4 TEMP
5 USERS
6 YANGTK

已选择6行。

SQL> select id,
2 name,
3 first_value(name) over(order by id) f_name,
4 last_value(name) over(order by id) l_name
5 from t;

ID NAME F_NAME L_NAME
---------- ------------------------------ ------------------------------ ------------------
1 SYSTEM SYSTEM SYSTEM
2 SYSAUX SYSTEM SYSAUX
3 UNDOTBS1 SYSTEM UNDOTBS1
4 TEMP SYSTEM TEMP
5 USERS SYSTEM USERS
6 YANGTK SYSTEM YANGTK

已选择6行。

SQL> select id,
2 name,
3 nth_value(name, 2) over(order by id) f_2_name,
4 nth_value(name, 2) from last over(order by id) l_2_name
5 from t;

ID NAME F_2_NAME L_2_NAME
---------- ------------------------------ ------------------------------ ------------------
1 SYSTEM
2 SYSAUX SYSAUX SYSTEM
3 UNDOTBS1 SYSAUX SYSAUX
4 TEMP SYSAUX UNDOTBS1
5 USERS SYSAUX TEMP
6 YANGTK SYSAUX USERS

已选择6行。

其中NTH_VALUE中的第二个参数是指这个函数取排名第几的记录,而FROM FIRSTFROM LAST指明这个排名第几,是从FIRST开始计算,还是从LAST开始计算。

yangtingkun 发表于:2009.09.04 23:47 ::分类: ( ORACLE ) ::阅读:(2142次) :: 评论 (0)

 

这篇关于Oracle11gr2分析函数新特性(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/932274

相关文章

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

从入门到精通C++11 <chrono> 库特性

《从入门到精通C++11<chrono>库特性》chrono库是C++11中一个非常强大和实用的库,它为时间处理提供了丰富的功能和类型安全的接口,通过本文的介绍,我们了解了chrono库的基本概念... 目录一、引言1.1 为什么需要<chrono>库1.2<chrono>库的基本概念二、时间段(Durat

MySQL count()聚合函数详解

《MySQLcount()聚合函数详解》MySQL中的COUNT()函数,它是SQL中最常用的聚合函数之一,用于计算表中符合特定条件的行数,本文给大家介绍MySQLcount()聚合函数,感兴趣的朋... 目录核心功能语法形式重要特性与行为如何选择使用哪种形式?总结深入剖析一下 mysql 中的 COUNT

MySQL 中 ROW_NUMBER() 函数最佳实践

《MySQL中ROW_NUMBER()函数最佳实践》MySQL中ROW_NUMBER()函数,作为窗口函数为每行分配唯一连续序号,区别于RANK()和DENSE_RANK(),特别适合分页、去重... 目录mysql 中 ROW_NUMBER() 函数详解一、基础语法二、核心特点三、典型应用场景1. 数据分

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN