`
jiaguwen123
  • 浏览: 411410 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

ORACLE常用函数汇总<二>

阅读更多

SQL中的组函数

组函数也叫集合函数,返回基于多个行的单一结果,行的准确数量无法确定,除非查询被执行并且所有的结果都被包含在内。与单行函数不同的是,在解析时所有的行都是已知的。由于这种差别使组函数与单行函数有在要求和行为上有微小的差异.

 

组(多行)函数

与单行函数相比,oracle提供了丰富的基于组的,多行的函数。这些函数可以在selectselecthaving子句中使用,当用于select子串时常常都和GROUP BY一起使用。

AVG([{DISYINCTALL}])

返回数值的平均值。缺省设置为ALL.

SELECT AVG(sal),AVG(ALL sal),AVG(DISTINCT sal) FROM scott.empAVG(SAL) AVG(ALL SAL) AVG(DISTINCT SAL)1877.94118 1877.94118 1916.071413

COUNT({*DISTINCTALL} )

返回查询中行的数目,缺省设置是ALL,*表示返回所有的行。

MAX([{DISTINCTALL}])

返回选择列表项目的最大值,如果x是字符串数据类型,他返回一个VARCHAR2数据类型,如果X是一个DATA数据类型,返回一个日期,如果Xnumeric数据类型,返回一个数字。注意distinctall不起作用,应为最大值与这两种设置是相同的。

MIN([{DISTINCTALL}])

返回选择列表项目的最小值。

STDDEV([{DISTINCTALL}])

返回选者的列表项目的标准差,所谓标准差是方差的平方根。

SUM([{DISTINCTALL}])

返回选择列表项目的数值的总和。

VARIANCE([{DISTINCTALL}])

返回选择列表项目的统计方差。

GROUP BY给数据分组

正如题目暗示的那样组函数就是操作那些已经分好组的数据,我们告诉数据库用GROUP BY怎样给数据分组或者分类,当我们在SELECT语句的SELECT子句中使用组函数时,我们必须把为分组或非常数列放置在GROUP BY子句中,如果没有用group by进行专门处理,那么缺省的分类是将整个结果设为一类。

select stat,counter(*) zip_count from zip_codes GROUP BY state;ST ZIP_COUNT-- ---------AK 360AL 1212AR 1309AZ 768CA 3982

在这个例子中,我们用state字段分类;如果我们要将结果按照zip_codes排序,可以用ORDER BY语句,ORDER BY子句可以使用列或组函数。

select stat,counter(*) zip_count from zip_codes GROUP BY state ORDER BY COUNT(*) DESC;ST COUNT(*)-- --------NY 4312PA 4297TX 4123CA 3982

HAVING子句限制分组数据

现在你已经知道了在查询的SELECT语句和ORDER BY子句中使用主函数,组函数只能用于两个子串中,组函数不能用于WHERE子串中,例如下面的查询是错误的:

错误SELECT sales_clerk,SUN(sale_amount) FROM gross_sales WHERE sales_dept='OUTSIDE' AND SUM(sale_amount)>10000 GROUP BY sales_clerk

这个语句中数据库不知道SUM()是什么,当我们需要指示数据库对行分组,然后限制分组后的行的输出时,正确的方法是使用HAVING语句:

SELECT sales_clerk,SUN(sale_amount) FROM gross_sales WHERE sales_dept='OUTSIDE' GROUP BY sales_clerkHAVING SUM(sale_amount)>10000;

 

嵌套函数

函数可以嵌套。一个函数的输出可以是另一个函数的输入。操作数有一个可继承的执行过程。但函数的优先权只是基于位置,函数遵循由内到外,由左到右的原则。嵌套技术一般用于象DECODE这样的能被用于逻辑判断语句IF....THEN...ELSE的函数。

分享到:
评论

相关推荐

    Oracle常用函数汇总

    以下是一些常用的Oracle函数,包括SQL组函数和一些杂项函数的详细解释。 **SQL Group Functions** 1. **AVG(distinct or all num)**:计算指定列或表达式的平均值。如果指定了`DISTINCT`,则只考虑不同值的平均;...

    oracle常用函数汇总

    Oracle 常用函数汇总 Oracle 是一个功能强大的关系数据库管理系统,提供了许多实用的函数来进行数据处理和分析。下面是 Oracle 中的一些常用函数,包括字符串处理、数字处理、日期处理等。 ASCII 函数 ASCII 函数...

    oracle常用函数chm版

    "Oracle常用函数chm版"是一个集合了多种Oracle数据库常用函数的参考资源,主要包含以下几个方面: 1. **数值型函数**:这类函数主要用于处理整数、浮点数等数值类型的数据。例如,`ROUND`函数用于四舍五入,`TRUNC`...

    Oracle常用函数汇总收集

    ### Oracle常用函数详解 在数据库管理和开发中,Oracle数据库因其强大的功能和广泛的适用性而备受青睐。其中,SQL函数是进行数据操作与处理的重要工具,本文将深入解析Oracle数据库中常用的函数,帮助读者更好地...

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

    本资料是基于网络资源整理而成的Oracle数据库110个常用函数汇总,旨在帮助读者更好地理解和掌握这些函数的应用场景和技术细节。这些函数不仅适用于求职面试准备,也是实际开发工作中不可或缺的一部分。 ### Oracle...

    SQL常用基础语句总结.doc

    创建表的语句为 `CREATE TABLE &lt;表名&gt;(&lt;列名&gt; &lt;数据类型&gt; &lt;该列所需约束&gt;,&lt;列名&gt; &lt;数据类型&gt; &lt;该列所需约束&gt;,…,&lt;该表的约束 1&gt;, &lt;该表的约束 2&gt;, …)`。其中,表名和列名可以使用半角英文字母、半角数字、下划线,...

    oracle常用函数汇总.docx

    以下是对Oracle常用函数及SQL语句的详细说明: **一、数据控制语句(DML)** 1. **INSERT**:用于向数据表中插入新记录。有两种基本形式: - 直接插入指定值:`INSERT INTO 表名(字段名1, 字段名2, ...) VALUES...

    oracle常用函数汇总.pdf

    本文主要汇总了Oracle中的常用SQL语句,包括数据控制语句(DML)和数据定义语句(DDL)中的关键函数和操作。 一、数据控制语句(DML) 1. INSERT语句: - 插入单行数据:`INSERT INTO 表名(字段名1, 字段名2, ......

    oracle最全函数大全

    FUNCTION_NAME(&lt;参数&gt;,...) OVER (&lt;PARTITION BY 表达式,...&gt;&lt;ORDER BY 表达式 &lt;ASC | DESC&gt;&lt;NULLS FIRST | NULLS LAST&gt;&lt;WINDOWING 子句&gt;) ``` - **PARTITION BY**子句:将数据分成多个分区,在每个分区内独立计算...

    sql21天自学通和oracle常用函数集锦

    而"Oracle常用函数集锦"则是专门针对Oracle数据库中的特定函数进行的汇总,对于数据库查询和数据处理非常实用。 在SQL的学习过程中,你会接触到以下几个关键知识点: 1. **SQL基础**:包括SQL的数据类型(如整型、...

    Oracle常用函数使用汇总

    以下是对标题和描述中提到的一些常用Oracle函数的详细说明: 字符函数: 1. `UPPER(str)`:将字符串`str`中的所有小写字母转换为大写字母。 2. `LOWER(str)`:与`UPPER`相反,它将所有大写字母转换为小写字母。 3. ...

    oracle数据仓库分析函数汇总

    本资源“oracle数据仓库分析函数汇总”聚焦于Oracle数据库中的分析函数,尤其是与`OVER()`子句相关的应用,这是一系列功能强大的SQL工具,用于处理窗口或分组数据。 首先,`OVER()`子句允许在单个SQL查询中定义一个...

    Oracle常用函数使用方法及常用查询

    ### Oracle常用函数使用方法及常用查询 在Oracle数据库中,SQL函数被广泛应用于各种数据处理需求,例如数据筛选、计算汇总、格式化等。本文将详细介绍Oracle中的常见函数及其应用场景,帮助用户更好地理解和掌握...

    oracle函数大全(分类成9个word文档)

    2. "oracle函数介绍(2) 非著名函数之单值函数.doc":这部分可能会介绍一些不那么常用但同样重要的单值函数,如DECODE()(根据条件返回不同值)、NVL()(处理NULL值)和TO_CHAR()(将数据转换为字符格式)。...

    ORACLE常用函数

    ### Oracle常用函数详解 #### 一、概述 Oracle数据库提供了丰富的内置函数,这些函数能够帮助开发者和数据库管理员高效地处理各种类型的数据。根据数据类型的不同,Oracle函数大致可以分为单行函数和多行(聚合)...

    oracle常用分析函数与聚合函数的用法

    在Oracle数据库中,分析函数和聚合函数是SQL查询中用于处理和汇总数据的重要工具。本文将详细介绍两者的主要功能和用法。 首先,我们关注的是排名函数。在Oracle中,有三种常用的排名函数: 1. `RANK()`: 这个函数...

Global site tag (gtag.js) - Google Analytics