oracle学习6

多行函数

一、分组函数

SUM 

AVG 

MAX

MIN

COUNT

 

max与min里面也可以对别的数据类型进行排列date,varchar,number

 

count(),对字段类型无要求,求个数吗,当然无所谓

分组

group  by后面的字段一定要跟前面查询的字段

上面这样也是可以的,

下面这样是不可以的,因为avg(salary)单纯的求平均值,但是你加上deparent_id 的话即使一个ID对应一个平均值,现在对应不起来,

 

下面这样也是不可以的,department_id 分组了,job_id怎么办,怎么跟着department_id 显示,

 

也就是说,select后面的字段只要不是分组函数都要出现在group by 后面

select后面有的(除了分组语句)group by 后面都要有,但是group by 后面有的select后面可以没有

having,

在having中使用分组

在where中不能使用分组

上面sql是不正确的,

把where换成having就可以了

原文地址:https://www.cnblogs.com/thomasbc/p/7243830.html