首页 > 代码库 > 数据库SQL的分组函数

数据库SQL的分组函数

分组函数:(五个)
	1···max(expr):求expr的最大值 }\  
	2···min(expr):求expr的最小值 }-- 数据类型是有规定的 
	3···sum(expr):求expr的总和   }-- 必须是字符型或数字
	4···avg(expr):求expr的平均值 }/
	5···count(expr):求expr的个数 
		expr的类型不能是空,如果是空,则不计入其中,
		因此需要用到nvl()来进行转换

	group by expr1,expr2,...的用法:
		group by 的后面跟的是炫耀分组的条件,
		例如用 department_id 进行分组,可以写成 group by department_id
		如果需要多重分组,只需要在后面急需添加筛选条件即可;
		Tips:select 语句中不包含分组函数的列,如果用group by 语句,
			 那么就需要全部出现在group by的语句中;

	having expr 的用法:
		当筛选语句中存在 min(),max(),sum(),count(),avg() 等分组函数时,是不能使用 where 来筛选的,为了解决这个问题,
		只需要吧 where 替换为 having 即可:
		
		select department_id,job_id, avg(salary)
		from employees
		having/where(replaced) avg(salary) > 10000
		group by department_id,job_id

  

数据库SQL的分组函数