聚合函数举例应用
(1)求员工总人数 select COUNT(*) 人数 from People
(2)求最大值,求最高工资 select MAX(PeopleSalary) 最高工资 from People
(3)求最小值,求最低工资 select MIN(PeopleSalary) 最低工资 from People
(4)求和,求工资总和 select SUM(PeopleSalary) 工资总和 from People
(5)求平均值,求平均工资 select AVG(PeopleSalary) 平均工资 from People select round(AVG(PeopleSalary),2) 平均工资 from People 保留两位
(6)求总人数,最大值,最小值,和,平均值,在一行显示 select COUNT(*) 人数,MAX(PeopleSalary) 最高工资 ,MIN(PeopleSalary) 最低工资,SUM(PeopleSalary) 工资总和,AVG(PeopleSalary) 平均工资 from People
(7)查询武汉员工人数,总工资,最高工资,最低工资和平均工资 select COUNT(*) 人数,MAX(PeopleSalary) 最高工资 ,MIN(PeopleSalary) 最低工资,SUM(PeopleSalary) 工资总和,AVG(PeopleSalary) 平均工资 from People where PeopleAddress='武汉'
(8)求出工资比平均工资高的人员信息 select * from People where PeopleSalary > (select round(AVG(PeopleSalary),2) 平均工资 from People)
(9)求数量,年龄最大值,年龄最小值,年龄总和,年龄平均值,在一行显示 方案一 select * year(getdate())-year(PeopleBirth) from People select COUNT(*) 数量, max(year(getdate())-year(PeopleBirth)) 最高年龄, min(year(getdate())-year(PeopleBirth)) 最低年龄, sum(year(getdate())-year(PeopleBirth)) 年龄总和, avg(year(getdate())-year(PeopleBirth)) 平均年龄 from People 方案二 select DATEDIFF(year,'1991-1-1','1993-3-3') select COUNT(*) 数量, max(DATEDIFF(year,PeopleBirth,GETDATE())) 最高年龄, min(DATEDIFF(year,PeopleBirth,GETDATE())) 最低年龄, sum(DATEDIFF(year,PeopleBirth,GETDATE())) 年龄总和, avg(DATEDIFF(year,PeopleBirth,GETDATE())) 平均年龄 from People
(10)计算出月薪在10000以上的男性员工的数量,年龄最大值,年龄最小值,年龄总和,年龄平均值 select '月薪10000以上' 月薪,'男' 性别, COUNT(*) 数量, max(year(getdate())-year(PeopleBirth)) 最高年龄, min(year(getdate())-year(PeopleBirth)) 最低年龄, sum(year(getdate())-year(PeopleBirth)) 年龄总和, avg(year(getdate())-year(PeopleBirth)) 平均年龄 from People where PeopleSalary >=10000 and PeopleSex ='男'
(11)统计出所在地在“武汉或者上海”的所有女员工数量以及最大年龄,最小年龄和平均年龄 select '武汉或上海的女员工' 描述 COUNT(*) 数量, max(year(getdate())-year(PeopleBirth)) 最高年龄, min(year(getdate())-year(PeopleBirth)) 最低年龄, sum(year(getdate())-year(PeopleBirth)) 年龄总和, avg(year(getdate())-year(PeopleBirth)) 平均年龄 from People where PeopleSex ='女' and PeopleAddress in('武汉','上海')
(12)求出年龄比平均年龄高的人员信息 select * from People where year(getdate())-year(PeopleBirth)> (avg(year(getdate())-year(PeopleBirth)) from People)