1.order by关键字
作用:用于对查询结果排序.
用法:利用asc(升序)和desc(降序)进行排序.
(升序)
(降序)
当排序列的值相同时可在后面添加备用排序选项(如图)
2.集合操作
2.1 集合:每次对数据库查询后的结果视为一个集合;
(集合示意图)
2.2 并集:关键词为union;操作显示结果为两个集合相加
(并集)
2.3 全集:关键词为unionall 操作显示结果为两个集合各显示一次,即重复部分显示两次.
(全集)
2.4 交集:关键词为intersect,操作显示结果为两个集合共同的部分;
(交集)
2.5 差集:关键词为minus,操作后的结果为集合a减去与集合b重合的部分(注意SQL语句的顺序)
(差集)
注意事项:使用集合操作注意:两条sql语句必须保证查询的列是一致的
错误1:列数不匹配
select * from emp where sal > 2000(该语句显示所有列)
minus
select empno from emp where deptno = 20;(该语句只显示empno列)
错误2:数据类型不匹配
select ename from emp where sal > 2000(该列ename数据类型是字符串)
minus
select empno from emp where deptno = 20;(该列empno数据类型是数字)
错误3:该条sql无意义
select sal from emp where sal > 2000
minus
select empno from emp where deptno = 20;
3 函数
函数分为单行函数和组函数.
3.1 单行函数:对单个数值进行操作并返回一个值;
且单行函数还可分为字符函数,数字函数,日期函数,转换函数和其他函数.
3.1.1 字符函数
1) concat(a,b),将a和b字符串拼接成一个字符串;
(concat图示)
2)initcap(a),将a列的每个单词首字母大写;
(initcap图示)
3)lower()/upper();将字符串小写/大写;
(upper图示)
4)length;获取字符串长度;
(length图示)
5)lpad(a,b,c)/rpad(a,b,c);将a列从左边填充b位用c填充/将a列从右边填充b位用c填充;
注意:b位中包含原列数位
(lpad图示)
6)ltrim(a,b)/rtrim;将a列左边的b字符清除/将a列右边的b字符清除;
注意:当不提供b字符时默认清除空格;
(ltrim图示)
7)replace(a,b,c);将a中的b字符串替换为c;
(replace图示)
8)substr(a,b,c);从a中的b开始截取c长度;
(substr图示)
9)trim(a from b);将b中两端的a字符清除;
(trim图示)
3.1.2 数字函数
1)abs();求绝对值;
(abs图示)
2)cel();向上取整;(表中的dual为虚表为了满足sql句式而设置这么一个表)
(ceil图示)
3)floor();向下取整
(floor图示)
4)power(x,y);x的y次幂
(power图示)