1.组函数
COUNT(*):将返回满足WHERE条件子句中记录的个数;
COUNT(expr):计算出符合表达式expr的所有的非空行的个数
SUM():返回某一列的所有数值的和;
AVG():返回某一列数值的平均值;
MAX():返回某一列数值的最大值;
MIN():返回某一列数值的最小值;
VARIANCE():返回某一列数值的方差;
STDDEV():返回某一列数值的标准差
DISTINCT关键字表示不去计算重复的记录,缺省是ALL。
组函数一般会忽略包含NULL的记录,如果不想忽略值NULL的记录,可用COUNT(NVL(commission_pct,0))
2. GROUP BY 子句:
SELECT column,group_function(column)
FROM table
[WHERE condition]
[GROUP BY group_by_expression1[,group_by_expression2]]
[ORDER BY column]
SELECT子句中的列或者是表达式如果没有包含在组函数里,则一定要包含在GROUP BY子句里
WHERE子句和GROUP BY 子句中不能使用别名
使用了GROUP BY子句后如果还想进行条件过滤,则需使用HAVING子句。
ORACEL处理SQL语句的顺序:
(1) 先判断SELEC语句,确定要显示哪些列;
(2)判断FROM,确定从哪些表里面去查;
(3)执行WHERE子句,把符合条件的行过滤出来;
(4)执行GROUP BY子句,进行分组;
(5)再执行SELECT子句里面的组函数;
(6)再执行HAVING子句;
(7)最后执行ORDER BY子句。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22012035/viewspace-694135/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/22012035/viewspace-694135/