`

Oracle 常用统计函数及注意点

阅读更多

oracle中over()开窗函数的理解
开窗函数指定了分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变化而变化,举例如下:
over(order by salary) 按照salary排序进行累计,order by是个默认的开窗函数
over(partition by deptno)按照部门分区
over(order by salary range between 50 preceding and 150 following)
每行对应的数据窗口是之前行幅度值不超过50,之后行幅度值不超过150
over(order by salary rows between 50 preceding and 150 following)
每行对应的数据窗口是之前50行,之后150行
over(order by salary rows between unbounded preceding and unbounded following)
每行对应的数据窗口是从第一行到最后一行,等效:
over(order by salary range between unbounded preceding and unbounded following)

 

cube子句在产生交叉报表的情况

聚合是数据仓库的基础。为了提高聚合的性能。Oracle提供了Group By 条款的扩展。
1. CUBE, ROLLUP扩展
2. 3个grouping函数
3. Grouping set扩展
CUBE ROLLUP GROUPING SETS对SQL的扩展使得查询和报告都变得简单和迅速。Rollup计算诸如sum count max min avg的函数,增加了聚合的级别.CUBE是一个类似ROLLUP的扩展,使得可以用一个语句计算所有可能的聚合。CUBE可以通过单条生成Cross-tabulation(交叉报表)报告的信息。CUBE,ROLLUP,GROUPING SETS扩展令你可以精确的对你感兴趣的group by 条款进行grouping。不运行cube操作也可以高效的从多个维度进行分析。计算一个full cube将会带来很高的负载,所以将cube替换为grouping sets可以明显地提高性能。CUBE ROLLUP GROUPING SETS可以生成单个结果集,等效于UNION ALL。为了提高性能,CUBE, ROLLUP, and GROUPING SETS可以并行进行:多进程同时运算所有的语句。这种功能使得聚合计算更加高效,因此提高了数据库性能和可测性

使用LAGLEAD函数统计

LagLead函数可以在一次查询中取出同一字段的前N行的数据和后N行的值。这种操作可以使用对相同表的表连接来实现,不过使用LAGLEAD有更高的效率

Lag函数为Lag(exp,N,defval)defval是当该函数无值可用的情况下返回的值。Lead函数的用法类似。

LeadLag函数也可以使用分组

分享到:
评论

相关推荐

    Oracle110个常用函数……PDF清晰版

    ### Oracle数据库常用函数知识点概览 #### 1. 函数分类与应用场景 Oracle数据库提供了丰富的内置函数来处理各种数据类型和业务需求。这些函数大致可以分为以下几类: - **字符串处理函数**:如 `CONCAT`, `SUBSTR`...

    第三章 Oracle常用函数.pdf

    本文档将详细介绍初学者在学习Oracle数据库时经常会用到的一些常用函数,并且适用于教学参考,以下是这些函数的具体知识点。 一、聚合函数 聚合函数用于对一组值进行计算,并返回单个值。聚合函数通常与GROUP BY...

    ORACLE函数大全与整理

    "ORACLE函数大全与整理"这个资源集成了Oracle数据库中常用和不常用的各类函数,为Oracle应用开发者提供了详尽的参考。 一、Oracle函数类型 Oracle函数主要分为以下几类: 1. 数学函数:如ABS()用于返回绝对值,MOD...

    Oracle高级操作函数学习笔记

    以下是从标题、描述和部分内容中提取的Oracle高级操作函数的知识点。 ### 分支判断函数 #### DECODE函数 DECODE函数是Oracle中的一个条件分支函数,它的功能类似于编程语言中的if-else if-else语句。DECODE函数的...

    最全的oracle常用命令大全.txt

    ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup ...

    oracle性能优化、函数大全、傻瓜問題

    四、ORACLE常用傻瓜问题 1. 数据丢失:误删数据后如何恢复,理解闪回功能和RMAN备份恢复机制。 2. 性能下降:当数据库运行缓慢时,如何定位问题并解决,如通过监控V$视图。 3. 锁定问题:处理事务冲突和死锁,了解...

    oracle 分组函数

    本篇文章将详细阐述Oracle分组函数的概念、功能以及常用分组函数的使用方法。 一、分组函数概述 分组函数主要作用于一组数据上,而不是单个记录,它们用于对数据进行汇总,如计算总和、平均值、最大值、最小值等。...

    oracle函数

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的内置函数,以帮助用户进行复杂...通过阅读《oracle+110个常用函数.doc》这样的文档,可以系统地学习和掌握这些功能,从而成为Oracle数据库操作的专家。

    ORACLE中的经典SQL及函数

    本文将深入探讨Oracle中的经典SQL查询和最常用的功能函数,帮助读者更好地理解和应用这些工具。 首先,我们关注的是SQL中的单行函数。这些函数主要用于处理单行数据,包括字符、数字、日期、转换和混合类型等,可以...

    oracle日期函数字符函数聚合函数

    Oracle数据库中的日期函数、字符函数和聚合函数是数据库操作中常用的功能,对于数据处理和查询至关重要。以下将详细解释这些函数的用法和示例。 日期函数主要用于处理和操作日期数据,以下是一些主要的Oracle日期...

    Oracle常用函数Trunc及Trunc函数用法讲解

    Oracle数据库中的`TRUNC`函数是一个非常实用的函数,它在处理日期和数值时具有不同的功能。本篇文章将深入解析`TRUNC`函数在日期和数值处理中的具体用法。 ### 日期处理 在日期处理方面,`TRUNC`函数主要用于截取...

    Oracle数据库开发之函数概述

    在本概述中,我们将详细介绍Oracle数据库中常用的数值函数、字符函数、日期函数以及转换函数等。 首先,函数在数据库中的作用是多方面的。它们可以方便地进行数据的统计分析,简化复杂的数据处理流程,同时也可以...

    ORACLE单行函数和组函数

    在处理NULL值时,需要注意以下几点: - **NULL**代表未知值或空值。 - 算术运算涉及NULL时,结果始终为NULL。 - 大多数函数遇到NULL参数时也会返回NULL。 - 特殊函数如**NVL()**、**COALESCE()**可以用来处理NULL值...

    Oracle常用傻瓜问题1000问

    "Oracle常用傻瓜问题1000问"这个资源可能包含了Oracle使用过程中遇到的各种常见问题及其解决方案,涵盖了数据库管理、SQL查询、性能优化、安全设置等多个方面。以下是一些Oracle数据库相关的知识点: 1. **安装与...

    Oracle 常用命令大全

    根据提供的文件信息,这里将对Oracle常用命令进行详细的解析与说明。从标题“Oracle 常用命令大全”以及描述“Oracle 常用命令大全”来看,文章旨在全面介绍Oracle数据库中的各种实用命令。接下来,我们将逐一分析并...

    ORACLE常用包参考手册

    "ORACLE常用包参考手册"很可能包含了一系列关于Oracle数据库中的PL/SQL包的详细信息,这些包是开发人员和DBA在日常工作中经常使用的工具。下面我们将深入探讨一些常见的Oracle包及其相关知识点。 1. **DBMS_OUTPUT*...

    Oracle实用教程_04章_Oracle数据类型和函数[整理].pdf

    Oracle 数据类型和函数 Oracle 数据类型是指一组性质相同的值的集合以及定义于这个值集合上的一组操作的总称。在 Oracle 数据库中,数据类型可以分为字符型、数值型、日期型和其它类型等几类。 Oracle 数据类型...

    Oracle函数与表达式.pptx

    在数学函数方面,Oracle提供了加减乘除、开方、取整等基础运算,以及更复杂的统计函数,如`abs()`(绝对值)、`mod()`(求余数)、`round()`(四舍五入)等,满足不同场景下的数值计算需求。 日期函数则用于处理...

Global site tag (gtag.js) - Google Analytics