oracle逻辑运算符与其优先级简介
Oracle的逻辑运算符也是用在SQL语句中必不可少的因素,一共有三个
逻辑运算符 意义 and 双值运算符,如果左右两个条件都为真,则得到的值就为真 or 双值运算符,只要左右两个条件有一个为真,则得到的值就为真 not 单指运算符,如果原条件为真,则得到真,如果元条件为假,反之如果原条件为假,则结果为真
Oracle的逻辑运算符也是用在SQL语下面使一些例子:
Select*fromempwheresal>2000andjob=‘SALESMAN';
寻找那些工资高于2000的且职位为销售的职员。
Select*fromempwherejob=‘CLERK'ordeptno=20;
寻找那些工作为CLERK或者所在部门标号为20的职员的列表
Select*fromempwherenot(sal>3000orsal<1500);
寻找那些工资既不大于3000也不小于1500,也即在1500到3000范围的员工,相当于:select*fromempwheresalbetween1500and3000;
结合到前面所列出的各类运算符,在这里汇总一下oracle中所有运算符的优先级句中必不可少的因素,一共有三个
运算符 级别 算术运算符(即‘+',‘-',‘*',‘/') 1 连接运算符(即‘||') 2 比较运算符(即‘>',‘>=',‘<',‘<=',‘<>') 3 Is[not]null,[not]like,[not]in 4 [not]between-and 5 not 6 and or
通常使用‘()'可以改变运算符的优先级。
需要注意的是and的优先级要优于or,也就是说
下面的语句
Select*fromempwheresal<1500orsal>=2000andjob=‘ANALYST';
等价于
Select*fromempwheresal<1500or(sal>=2000andjob=‘ANALYST');
而不是你所预期的
Select*fromempwhere(sal<1500orsal>=2000)andjob=‘ANALYST';
一般我们即使我们要表达第一个语句所要表达的意思,为了避免误解,都不采取第一种写法,而是用括号来表明我们要先算后面的部分。
总结
本文关于oracle逻辑运算符与其优先级简介就到这里,希望对大家有所帮助。感兴趣的朋友可以参阅:OracleRMAN自动备份控制文件方法介绍 、 oracle逻辑结构分析 、 oracle数据库启动阶段分析 、 oracle虚拟专用数据库详细介绍等。有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对毛票票网站的支持。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。