课 程 推 荐 我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈 PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)教程合集 👈👈 Oracle数据库教程:👉👉 Oracle数据库教程合集 👈👈 MySQL数据库教程:👉👉 MySQL数据库教程合集 👈👈 优 质 资 源 下 载 :👉👉 资源下载合集 👈👈 优 质 教 程 推 荐:👉👉 Python爬虫从入门到入狱系列 合集 👈👈 .
SQL高级查询_函数
函数
- 求和:SUM()
-- 每个部门的工资总和 select e.deptno,sum(e.sal) from emp e group by e.deptno;
- 平均值:AVG()
-- 每个部门的平均工资 select e.deptno,avg(e.sal) from emp e group by e.deptno;
- 最大值:MAX()
-- 每个部门最高工资 select e.deptno,max(e.sal) from emp e group by e.deptno;
- 最小值:MIN()
-- 每个部门最低工资 select e.deptno,min(e.sal) from emp e group by e.deptno;
- 统计数量:COUNT()
-- 统计各个部门出现的次数 select count(1) from emp e group by e.deptno; -- 统计各个部门的人员数量(注意去除重复) select deptno,count(distinct e.ename) from emp_bak e group by e.deptno;
- 求余:MOD(X,Y)
-- 求5/2的余数 select MOD(5,2) from dual;
- 去重:DISTINCT()
-- 字段去重可以不加括号 select distinct e.job from emp e; -- 字段去重,也可以加括号 select distinct(e.job) from emp e; -- 多字段去重(多字段去重不能加括号) select distinct e.ename,e.deptno from emp_bak e
- 空值转换:nvl()
-- 将空值转换成指定字符,字符类型必须与字段类型一致 select nvl(e.comm,0) as new_comm from emp e
- 按组合并值:wm_concat
-- 直接通过wm_concat合并出现乱码,是因为字段类型的问题,可以通过to_char转换数据类型,然后再合并 select orgid,wm_concat(to_char(username)) from t_bas_user group by orgid; select orgid,listagg(to_char(username),',') within group (order by orgid) as obj_all from t_bas_user group by orgid;