如何使用sql函数平均值、总数、最小值、最大值
使用sql函数,您可以在一个select语句的查询当中,直接计算数据库资料的平均值、总数、最小值、最大值、总和、标准差、变异数等统计。使用recordset对象时,也可使用这些sql函数。
sql函数包括如下:
avg函数:计算查询中某一特定字段资料的算术平均值。
count函数:计算符合查询条件的记录数。
min, max函数:传回指定字段之中符合查询条件的第一条、最末条记录的资料。
first, last函数:传回指定字段之中符合查询条件的最小值、最大值。
stdev函数:计算指定字段之中符合查询条件的标准差。
sum函数:计算指定字段之中符合查询条件的资料总和。
var,函数:计算指定字段之中符合查询条件的变异数估计值。
ado如何使用sql函数呢?
详细描述如下: avg函数 avg函数,计算查询中某一特定字段资料的算术平均值。
语法为avg(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
avg函数在计算时,不包含任何值为 null 的资料。
count函数
count函数,计算符合查询条件的记录条数。
语法为count (运算式)。运算式,可为字段名称、*、多个字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
count 函数於计算时,不包含任何值为 null 的资料。
但是,count(*) 则计算所有符合查询条件的记录条数,包含那些null的资料。
如果count(字段名称) 的字段名称为多个字段,将字段名称之间使用 & 分隔。
多个字段当中,至少有一个字段的值不为null的情况下,count函数才会计算为一条记录。如果多个字段都为null,则不算是一条记录。譬如:
select count(价格 & 代号) from 产品
first/last函数
first函数、last函数,传回指定字段之中符合查询条件的第一条、最末条记录的资料。
语法为first(运算式) 和 last(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
min/max函数
min函数、max函数,传回指定字段之中符合查询条件的最小值、最大值。
语法为min(运算式) 和 max(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
stdev函数
stdev函数,计算指定字段之中符合查询条件的标准差。
语法为stdev(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
如果符合查询条件的记录为两个以下时,stdev函数将传回一个null 值,该表示不能计算标准差。
sum函数
sum函数,计算指定字段之中符合查询条件的资料总和。
语法为sum(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
sum函数可使用两个字段资料运算式,譬如计算产品的单价及数量字段的合计:
select sum(单价 * 数量) from 产品
var函数
var函数,计算指定字段之中符合查询条件的变异数估计值。
语法为var(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。
如果符合查询条件的记录为两个以下时,var函数将传回一个null 值,该表示不能计算变异数。
select min(c) from
(select min(b ) as c from tab_name
union
select min(a) as c from tab_name)
已知有两张表
部门表department:部门编号 dept_id 、部门名称 dept_name
员工表employee:员工编号 emp_id、员工姓名 emp_name、 部门编号 dept_id 、工资emp_wage
1)求各部门的平均工资
- select d.dept_name ,round(avg(nvl(e.emp_wage,0)),2) sal from employee e left join department d on e.dept_id=d.dept_id group by d.dept_name;
2)求各部门的总工资
- select d.dept_name ,sum(nvl(e.emp_wage,0)) sal from employee e left join department d on e.dept_id=d.dept_id group by d.dept_name;
3)求工资大于5000的员工所属的部门名称、员工id和员工工资
- select d.dept_name,e.emp_id,e.emp_wage from department d ,employee e where e.emp_wage>5000 and d.dept_id = e.dept_id;
涉及函数解释:
avg为求平均值函数,将要求平均值的列avg(列名)
nvl为如果未空则置空值为其他数据的函数,nvl(为空的列,将空值置成的其他值)
round为四舍五入函数,round(列名,保留小数位数)
oracle常见函数:平均值、总数、最小值、最大值、总和、标准差
avg函数:计算查询中某一特定字段资料的算术平均值。 count函数:计算符合查询条件的记录数。 min, max函数:传回指定字段之中符合查询条件的第一条、最末条记录的资料。 first, last函数:传回指定字段之中符合查询条件的最小值、最大值。 stdev函数:计算指定字段之中符合查询条件的标准差。 sum函数:计算指定字段之中符合查询条件的资料总和。 var,函数:计算指定字段之中符合查询条件的变异数估计值。 详细描述如下:
avg函数
avg函数,计算查询中某一特定字段资料的算术平均值。 语法为avg(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 avg函数在计算时,不包含任何值为 null 的资料。 count函数 count函数,计算符合查询条件的记录条数。 语法为count (运算式)。运算式,可为字段名称、*、多个字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 count 函数於计算时,不包含任何值为 null 的资料。 但是,count(*) 则计算所有符合查询条件的记录条数,包含那些null的资料。 如果count(字段名称) 的字段名称为多个字段,将字段名称之间使用 & 分隔。 多个字段当中,至少有一个字段的值不为null的情况下,count函数才会计算为一条记录。如果多个字段都为null,则不算是一条记录。譬如: select count(价格 & 代号) from 产品 first/last函数 first函数、last函数,传回指定字段之中符合查询条件的第一条、最末条记录的资料。 语法为first(运算式) 和 last(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 min/max函数 min函数、max函数,传回指定字段之中符合查询条件的最小值、最大值。 语法为min(运算式) 和 max(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 stdev函数 stdev函数,计算指定字段之中符合查询条件的标准差。 语法为stdev(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 如果符合查询条件的记录为两个以下时,stdev函数将传回一个null 值,该表示不能计算标准差。 sum函数 sum函数,计算指定字段之中符合查询条件的资料总和。 语法为sum(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 sum函数可使用两个字段资料运算式,譬如计算产品的单价及数量字段的合计: select sum(单价 * 数量) from 产品 var函数 var函数,计算指定字段之中符合查询条件的变异数估计值。 语法为var(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的sql函数。 如果符合查询条件的记录为两个以下时,var函数将传回一个null 值,该表示不能计算变异数。 select min(c) from (select min(b ) as c from tab_name union select min(a) as c from tab_name)
如何使用sql函数平均值、总数、最小值、最大值的更多相关文章
- SQL函数说明大全
一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...
- SQL函数说明大全 (转)
一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...
- sql函数(转)
一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...
- SQL函数介绍
http://www.cnblogs.com/moss_tan_jun/archive/2010/08/23/1806861.html 一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用 ...
- [转] SQL函数说明大全
from http://www.cnblogs.com/moss_tan_jun/archive/2010/08/23/1806861.html 一旦成功地从表中检索出数据,就需要进一步操纵这些数据, ...
- mysql学习笔记—常用sql函数
SQL 拥有很多可用于计数和计算的内建函数. SQL Aggregate 函数 SQL Aggregate 函数计算从列中取得的值,返回一个单一的值. 有用的 Aggregate 函数: AVG() ...
- oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数
花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...
- Oracle数据库--SQL函数
Oracle SQL函数 1.ASCII返回与指定的字符对应的十进制数;SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii( ...
- Oracle数据库常用SQL函数
1.SQL函数的概念: 函数一般是在数据上执行的,它给数据的转换和处理提供了方便.只是将取出的数据进行处理,不会改变数据库中的值.(类似于java中的方法但函数只是将数据库中的数据取出(复制)到函数中 ...
随机推荐
- 嵌入式开发之信号采集同步---VSYNC和HSYNC的作用以及它们两者之间的关系
VSYNC和HSYNC的作用以及它们两者之间的关系 VSYNC和HSYNC的作用以及它们两者之间的关系 VSYNC和HSYNC是什么 VSYNC: vertical synchronization,指 ...
- spark(1.1) mllib 源码分析(三)-朴素贝叶斯
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/4042467.html 本文主要以mllib 1.1版本为基础,分析朴素贝叶斯的基本原理与源码 一.基本原 ...
- 《C++程序设计》朝花夕拾
(以后再也不用破Markdown写东西了,直到它有一个统一的标准,不然太乱了--) 函数签名 int f (int a, int b) ↑ ↑ ↑ ↑ 返回类型 函数名 形 式 参 数 其中,函数 ...
- cout顺序,i++和++i
先看下以下代码 #include<iostream> using namespace std; ; int f1() { x = ; return x; } int f2() { x = ...
- 边缘检测算子和小波变换提取图像边缘【matlab】
Roberts边缘检测算子:根据一对互相垂直方向上的差分可用来计算梯度的原理,采用对角线方向相邻两像素之差. 小波变换的方法比较适用于展现夹带在正常信号中的瞬间反常现象,具有方向敏感性.所以可以边缘检 ...
- Laravel5.1 模型 --多对多关系
多对多关系也是很常用的一种关系,比如一篇文章可以有多个标签,一个标签下也可以有多篇文章,这就是一个典型的多对多的关系. 1 实现多对多关系 多对多关系我们需要三张表,一张是文章另一张是标签,第三章表是 ...
- JAVA-各种类型之间转换 parse() 与valueOf()
类型互转 1.各种类型转String 2.String转Bytes 3.数组转List 4.进制转换 5. parse 在 SimpleDateFormat 中是转换为Date类,其它的一些包装类都是 ...
- Android USB大容量存储时SD卡状态监听(转)
对SD卡状态监听,到现在为止我知道的有两种方式: 1.注册StorageEventListener来监听sd卡状态 StorageEventListener中有onStorageStateChange ...
- PhoneGap 获得设备属性Demo
<!DOCTYPE html> <html> <head> <title>设备属性Demo</title> <script type= ...
- hdu 4055(经典问题)
总是不能正确的将一个大问题变成子问题,而且又找不到状态转移方程. 直接导致这题想了5个小时最后还是无果... 谨记! Number String Time Limit: 10000/5000 MS ( ...