Oracle,MySQL,MSSQL Server和Access数据库的统计函数
Oracle,MySQL,MSSQL Server和Access数据库的统计函数
我们在编程中常用的统计函数有计数,求和,求最大值,求最小值,求平均,方差和标准差.
方差(Variance)
方差是标准偏差的平方。组中的值,与它们平均值之间偏离程度的度量。
标准偏差(Standard Deviation)
一个参数,指出一种方式,一个概率函数以这种方式分布在平均值附近,而平均值为方差的平方根。
用来描述数值集合,计算与算术均值或平均值之间的差异。
SQL语句中的函数是不分大小写的。
1、COUNT
获得记录数
四种数据库都一样,用法如下:
COUNT (*) 返回条件查询结果中所有记录的数量.
COUNT (ALL expression) 对组中的每一行都计算 expression 并返回非空值的数量。
COUNT (DISTINCT expression) 对组中的每一行都计算 expression 并返回唯一非空值的数量。
2、AVG
平均值
四种数据库的用法有点不一样.
Access和MySQL不支持AVG(distinct expression)操作,而Oracle和MS SQL
Server是支持的.
3、MIN, MAX
分别返回表达式中的最小和最大值
四种数据库区别跟上面AVG函数一样.
4、Sum
求和
用法有区别,也是Access和MySQL不支持带distinct的表达式用法.
5、标准偏差函数:
四种数据库的差别更大了,在很多地方也是不相同的:
|
产品 |
总体偏差 |
抽样偏差 |
用法 |
说明 |
|
Access |
StDevP() |
StDev() |
括号中用字段名或者字段运算表达式 |
不支持表达式前加distinct,P是Population。 |
|
MS SQL Server |
同上 |
同上 |
同上 |
支持表达式前加distinct |
|
Oracle |
StdDev_Pop() |
StdDev() StdDev_Samp() |
同上 |
支持表达式前加distinct |
|
MySQL |
5.0.3版以前 Std() StdDev() 5.0.3版以后,加入STDDEV_POP() |
5.0.3版以前 无 5.0.3版以后加入STDDEV_SAMP() |
同上 |
不支持表达式前加distinct |
6、方差函数:
|
产品 |
总体偏差 |
抽样偏差 |
用法 |
说明 |
|
Access |
VarP() |
Var() |
括号中用字段名或者字段运算表达式 |
不支持表达式前加distinct |
|
MS SQL Server |
同上 |
同上 |
同上 |
支持表达式前加distinct |
|
Oracle |
Var_pop() |
var_samp() variance |
同上 |
支持表达式前加distinct |
|
MySQL |
4.1版以前 没有 5.0.3版以后,加入VAR_POP() |
5.0.3版以前 无 5.0.3版以后加入VAR_SAMP() |
同上 |
不支持表达式前加distinct |



