sql05结果计算与分组

结果计算

Select-From-Where语句中,Select子句后面不仅可是列名,而且可是一些计算表达式或聚集函数,表明在投影的同时直接进行一些运算

求有差额(差额>0)的任意两位教师的薪水差额

根据学生年龄求出学生的入学年份:当前是2015

聚集函数

count:求个数 sum:求和 avg:求平均 max:求最大 min:求最小

eg.求教师的工资总额

eg.求数据库课程的平均成绩

分组查询与分组过滤

分组:SQL可以将检索到的元组按照某一条件进行分类,具有相同条件值的元组划到一个组或一个集合中,同时处理多个组或集合的聚集运算。

Where 后面多一个Group by

分组条件可以是:列名1,列名2

eg.求每一个学生的平均成绩

求每一门课程的平均成绩

聚集函数是不允许用于Where子句中的:Where子句是对每一元组进行条件过滤,而不是对集合进行条件过滤;

分组过滤:若要对集合(即分组)进行条件过滤,即满足条件的集合/分组留下,不满足条件的集合/分组剔除。

Having子句,又称分组过滤子句。需要有Groupby子句支持,换句话说,没有Groupby子句,便不能有Having子句

eg.A求不及格课程超过两门的同学的学号

eg.求有十人以上不及格的课程号

eg.求有两门以上不及格课程同学的学号及其平均成绩


立志做一名攻城狮