在SQL中的聚合函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SQL中的聚合函数相关的知识,希望对你有一定的参考价值。

select sname
from student s join sc
on s.sno=c.sno
group by sc.sno,sname
having count(sc.sno)>3

为什么sname一定要写在group by语句中?不是可以直接用sc.sno分组吗

可以直接用sno分组,但是select后面能用的字段只能是聚合函数(字段)或者是groupby子句中的字段。

如果在group by中不用sname,你可以这样写,但是你要看是否符合题目要求。
select min(sname)
from student s join sc
on s.sno=c.sno
group by sc.sno
having count(sc.sno)>3
参考技术A 好汉,此语句并非最佳,精简。洒家之见,你要写出要实现何?以便为你解答。
聚合套函数必要与group by相连。休要与子套相混,如下:select * from oreders where partnum=(select partnum where wc.decrip like 'faaa%')
参考技术B 原则上,你要用group by,那么前面抽取的字段必须要作为分组依据,否则就需要sum,avg,max等函数的处理。

SQL Server中的聚合函数都有哪些?

请问SQL Server中的聚合函数有哪些?请问ADD聚合函数在SQL Server中如何使用?

SQL Server中的聚合函数有:

1.count() 所有记录数

2.count(*)所有非null记录数

3.avg()   某一列平均值

4.min() 某一列最小值

5.max() 某一列最大值

6.sum() 某一列总和

使用方法:

1.    SELECT COUNT(字段1) FROM 表A    统计字段1在表A中出现的次数

2.    SELECT 学号,SUM(各科成绩) FROM student GROUP BY 学号    用来根据统计学生的总成绩

参考技术A 聚合函数count() sum()

count() 汇总个数,sum()汇总总和.比如一个学生表 student, mark(id,score) 成绩表
select count(*) from student --所有同学的个数

select sum(score) from mark --求出所有分数的总和
参考技术B count() 所有记录数
count(*)所有非null记录数
avg() 某一列平均值

min() 某一列最小值
max() 某一列最大值
sum() 某一列总和
参考技术C sum() 求和,例如 select sum(score) where mark
max(),求最大值
min() 求最小值
count(*) 求技术,
根据不同的题目要求,分析出该怎么用?写出语句就可以的啊!

以上是关于在SQL中的聚合函数的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server中的聚合函数都有哪些?

sql 2005 聚合函数

关于Sql中的聚合函数的问题

sql 聚合函数都有哪些

sql 语句中那些是聚合函数?

sql聚合函数的应用