oracle支持的SQL操作符

根据优先级排序
一、算术操作符
+、-、*、/
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;

猜你喜欢

转载自379185161.iteye.com/blog/2255683
今日推荐