根据优先级排序
一、算术操作符
+、-、*、/
select sal,comm,sal+nvl(comm,0) from emp;
二、连接操作符
1、union :合并两个操作结果,去掉重复值
select sal,deptno from emp union select sal,deptno from emp where deptno=10;
2、union all:合并两个操作结果,保留重复值
select sal,deptno from emp union all select sal ,deptno from emp where deptno=10;
3、intersect :取两个结果集的交集
select sal ,deptno from emp intersect select sal,deptno from emp where deptno=10;
4、minus:取在第一个结果集中出现但在第二个结果集中没有出现过的数据
select sal ,deptno from emp minus select sal,deptno from emp where deptno=10;
三、比较操作符
= != > < >= <=
in :用来检索某列的值在某个列表中的数据行
select * from emp where empno in(7788,7800,7900);
any :与一个列表中任意一个值比较
select ename,sal from emp where sal<any(3000,2850,2975);
all :与一个列表中所有值比较
select ename,sal from emp where sal<all(3000,2850,2975);
between..and..:用来检索列值包含在指定区间内的数据行
select ename,sal from emp where sal between 1600 and 2975;
is null:用来判断是否为null
select * from emp where mgr is null;
like:模糊匹配
_ :表示匹配指定位置的一个字符
% : 表示匹配指定位置开始的一个或者多个字符
select * from emp where ename like 'B_A%';
如果需要对_和%进行文本匹配,可以用escape选项标识这些字符
例如:'%\%%'escape '\'
四、逻辑操作符
not :
and
or
1、查询工资大于1600且小于3000的信息:
select * from emp where sal>1600 and sal<3000;
/
2、查询部门为10和20的信息:
select * from emp where deptno=10 or deptno=20;