温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Oracle_071_lesson_p6

发布时间:2020-04-19 19:06:03 来源:网络 阅读:218 作者:TONY16168 栏目:关系型数据库

分组函数Group functions

avg 求平均
count 求数量
max 求值可针对数字,日期,字符
min 求值可针对数字,日期,字符
sum 求总和
listagg
stddev
variance

count详解:

count(*)将返回表格中所有存在的行的总数包括值为null的行,然而count(列名)将返回表格中除去null以外的所有行的总数(有默认值的列也会被计入).

distinct 列名,得到的结果将是除去值为null和重复数据后的结果

select avg(salary),max(salary),min(salary),sum(salary)
from employees
where job_id like '%REP%';

select count(*)
from employees
where department_id=50;

select count(commission_pct)
from employees
where department_id=50;
空值行不参与计算

GROUP BY 分组
select department_id,avg(salary)
from employees
group by department_id;

select department_id,avg(salary)
from employees
group by department_id;
order by avg(salary);
此group by 后可跟order by ,但order by子句只能出现在最后。

select avg(salary)
from employees
group by department_id;
但group by 的列名不必一定在select 子句中

SELECT department_id, AVG(salary)
FROM employees
GROUP BY department_id
HAVING AVG(salary) > 8000;

where 子句不能加分组函数,要用having子句才能加分组函数
alias 别名不能放在group by 子句中

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI