您的位置:首页
AND、OR运算符的组合使用
2017-05-05 13:54
211 查看
6.2.3 AND、OR运算符的组合使用
在WHERE子句中,通过AND、OR运算符能够同一时候连接多个条件。当然AND、OR运算符也能够同一时候使用。可是当AND、OR运算符同一时候存在时,其优先级怎样确定呢?与大多数语言一样,SQL语言觉得AND运算符的运算级别要高于OR运算符。即当出现
时。其运算实际上是等价于
.因此,AND、OR运算符须要同一时候使用时,一定要注意运算符的优先级。
实例5 同一时候使用AND、OR运算符实现查询
假如须要查询全部计算机系和生物系中。且工资收入(SAL)超过1000的教师的姓名(TNAME)、系(DNAME)、工资(SAL)信息。假设採用例如以下SQL代码:
.执行结果如图6.5所看到的。
非常显然没有得到预期的计算结果,这是由于AND运算符的运算级别要高于OR运算符。代码实际上实现的查询是计算机系的全部教师以及生物系中的工资大于1000的教师的相关信息。要实现例中须要的查询结果。正确的SQL代码为:
执行结果如图6.6所看到的。
能够发现,当在OR运算符连接的两个条件加上括号( )后,得到了须要的查询结果。
这是由于,括号( )的优先级高于AND运算符,运行过程就先于AND运算符。
注意 当OR运算符和AND运算符同一时候运用时,建议用户不要考虑其默认的优先级顺序,而是採用括号( )来实现须要的运行顺序。这样能够增强程序的可读性。
在WHERE子句中,通过AND、OR运算符能够同一时候连接多个条件。当然AND、OR运算符也能够同一时候使用。可是当AND、OR运算符同一时候存在时,其优先级怎样确定呢?与大多数语言一样,SQL语言觉得AND运算符的运算级别要高于OR运算符。即当出现
condition1 OR condition2 AND condition3 |
condition1 OR (condition2 AND condition3) |
实例5 同一时候使用AND、OR运算符实现查询
假如须要查询全部计算机系和生物系中。且工资收入(SAL)超过1000的教师的姓名(TNAME)、系(DNAME)、工资(SAL)信息。假设採用例如以下SQL代码:
SELECT TNAME, DNAME, SAL FROM TEACHER WHERE DNAME='计算机' OR DNAME='生物' AND SAL>1000 ORDER BY SAL |
图6.5 计算机系或者生物系中工资大于1000的教师 |
SELECT TNAME, DNAME, SAL FROM TEACHER WHERE (DNAME='计算机' OR DNAME='生物') AND SAL>1000 ORDER BY SAL |
图6.6 计算机系和生物系中工资大于1000的教师 |
这是由于,括号( )的优先级高于AND运算符,运行过程就先于AND运算符。
注意 当OR运算符和AND运算符同一时候运用时,建议用户不要考虑其默认的优先级顺序,而是採用括号( )来实现须要的运行顺序。这样能够增强程序的可读性。
相关文章推荐
- AND、OR运算符的组合使用
- sql: where条件中AND、OR运算符的组合使用
- SQL: where条件中AND、OR运算符的组合使用
- c99--在C中使用or and...
- SUM+IF语句中使用逻辑函数AND和/或OR
- 【Android进阶】使用Andbase快速开发框架实现常见侧滑栏和滑动标签页组合效果
- SQL AND & OR 运算符
- Android使用Andbase快速开发框架实现常见侧滑栏和滑动标签页组合效果
- AndAlso & OrElse Operators in C#短路运算符
- if and if or的使用
- SQLite-And和OR运算符
- SQL AND & OR 运算符
- About how to use Edit Control and SPin Control together! (关于怎么组合使用Edit Control 和 Spin Control 增加浮点数)
- SQL And & Or 运算符
- SQL AND & OR 运算符
- 【Android进阶】使用Andbase快速开发框架实现常见侧滑栏和滑动标签页组合效果
- 使用 UNION 运算符组合多个结果
- Oracle 按位的 AND/OR/XOR 用法及bitand与utl_raw.bit_and的不同使用方式
- python中使用and和or来实现其它语言中的?号表达式
- 【Content Provider】SQL AND & OR 运算符