博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle学习日志-6(聚合查询)
阅读量:7035 次
发布时间:2019-06-28

本文共 888 字,大约阅读时间需要 2 分钟。

hot3.png

聚合函数

聚合函数可以对数据进行某种操作或者计算。比如几个常用的函数:

COUNT:计算表中行数。
SUM:计算表中数据列中数据的合计值。
AVG:计算表中数据列中数据的平均值。
MAX:求出表中任意列中数据的最大值。
MIN:求出表中任意列中数据的最小值。
下面用这个几个函数对以下表进行操作。


  • COUNT:计算表中行数。
SELECT COUNT(*) FROM Product;

记录为NULL的行不记入行数,如进价这一列,有两个NULL。如果用COUNT计算行数,就会得到6。

SELECT COUNT(purchase_price) FROM Product;

但是如果一个表只有一列,记录了三行记录,这三条记录都为NULL。如果用COUNT()求行数,会得到3.如果用COUNT<列名>求行数,会得到0.因为COUNT()会得到包含NULL的数据,COUNT<列名>会得到NULL以外的数据。并且只有COUNT函数可以用*作为参数。


  • SUM:计算表中数据列中数据的合计值。
    比如计算进价的合计值。
SELECT SUM(purchase_price) FROM Product;

注意进价这一列有两个NULL的数据。之前提到过四则运算中,如果包含NULL,那么结果也是NULL。但是SUM函数不同,SUM函数会在运算前就将NULL排除在外。


  • AVG:计算表中数据列中数据的平均值。
    比如计算进价的平均值。
SELECT AVG(purchase_price) FROM Product;

和SUM一样,AVG会在计算前将NULL排除,所以计算过程是(500+320+2800+2800+500+790)/6。


  • MAX:求出表中任意列中数据的最大值,MIN:求出表中任意列中数据的最小值。
    使用方法和SUM,AVG一样。比如求进价的最小值和售价的最大值
SELECT MIN(purchase_price) ,MAX(sale_price)FROM Product;

转载于:https://my.oschina.net/u/4000133/blog/3003354

你可能感兴趣的文章
《MS SQL Server 2000管理员手册》系列——26. Microsoft SQL Server 复写:概观与快照式复写...
查看>>
Device ethx does not seem to be present, delaying initialization.
查看>>
html a标签 点击打开页面前添加参数
查看>>
Linux学习笔记(二)
查看>>
我的友情链接
查看>>
MYSQL数据库导入数据时出现乱码的解决办法
查看>>
OpenGL开发库的详细介绍
查看>>
hive调优之 优化hive-site.xml配置
查看>>
Bug 9728806 ORA-7445
查看>>
我的友情链接
查看>>
文件管理
查看>>
我的友情链接
查看>>
双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计
查看>>
存储器容量扩展的问题
查看>>
数据结构之集合实现
查看>>
(转)企业如何留住人才
查看>>
使用MockMvc测试SpringMVC Controller
查看>>
Ubuntu 13.04 server 安装 Apache2+PHP5+MySQL
查看>>
NSURLRequestCachePolicy 缓存策略
查看>>
006.MySQL优化方案-自查询:in/exists/from
查看>>