SQL函数

聚集函数通常和GROUP BY联合起来使用

()必选,[]可选

COUNT(*) 统计元组个数,返回被选行数

COUNT([DISTINCT|ALL]<列名>) 统计一列中值的个数

SUM([DISTINCT|ALL]<列名>) 统计一列值的总和  此列必须为数值型

AVG([DISTINCT|ALL]<列名>)计算一列值的平均值  此列必须为数值型

MAX([DISTINCT|ALL]<列名>)计算某一列值的最大值

MIN([DISTINCT|ALL]<列名>)计算某一列值的最小值

GROUP BY 子句分组  有点像透视表,可以拉分组

细化聚集函数的作用对象

如果未对查询结构分组,聚集函数将作用于整个查询结果

对查询结果分组后,聚集函数将分别作用每一个组

按指定的一列或多咧分组,值相等的为一组

选修不同课程的人数的学号

SELECT Cno, COUNT(Sno) 选择课程编号,及选修课程的人数的计数

FROM SC

GROUP BY Cno  以课程编号分组

获得选修课程数大于3的学生的学号

SELECT Sno 学生学号

FROM SC

GROUP BY Sno  以学生学号分组

HAVING COUNT(*)>3  行数大于3

错误案例:

SELECT Sno ,AVG(Grade)

FROM SC

WHERE AVG(Grade)>=90  WHERE是对记录的限定,但是AVG是对组的限定是在GROUP BY基础上的WHERE是作用于记录,HAVING 作用于记录之上的分组

GROUP BY Sno

 

正确案例:

SELECT Sno,AVG(Grade)

FROM SC

GROUP BY Sno

HAVING AVG(Grade)>=90

 

练习列出计算机系姓刘同学的信息,按照学号大小排序

SELECT *

FROM Student

WHERE Sdept =’CS’ AND Sname LIKE ‘刘%‘

ORDER BY Sno

按系区分男女,统计各个系的人数,降序排列

SELECT Sdept,Ssex,COUNT(Sno)

FROM Student

GROUP BY Sdept,Ssex

ORDER BY COUNT(Sno)

 

 

 

 

 

 

 

 

 

 

 

阅读更多
文章标签: SQL
个人分类: sql 数据分析
想对作者说点什么? 我来说一句

SQL函数SQL函数

2009年11月20日 1KB 下载

sql函数大全-sql函数大全

2010年09月28日 53KB 下载

mssql数据库函数汇总

2009年05月30日 32KB 下载

去掉相同字符的SQL函数.

2010年04月19日 11KB 下载

Sql函数大全

2012年04月25日 858KB 下载

ORACLE SQL函数集

2011年08月25日 29KB 下载

06oralce的 sql函数 PPT

2011年07月29日 8.34MB 下载

没有更多推荐了,返回首页

不良信息举报

SQL函数

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭