SQL 中多个 and or 的组合运算
sql关系型运算符优先级高到低为:not >and> or
AND、OR运算符的组合使用
在WHERE子句中,通过AND、OR运算符可以同时连接多个条件,当然AND、OR运算符也可以同时使用。但是当AND、OR运算符同时存在时,其优先级如何确定呢?与大多数语言一样,SQL语言认为AND运算符的运算级别要高于OR运算符。即当出现:
condition1 OR condition2 AND condition3
其运算实际上是等价于:condition1 OR (condition2 AND condition3) //先运算and 再运算or
因此,AND、OR运算符需要同时使用时,一定要注意运算符的优先级
网上获取计算机和生物老师工资>1000的人
SELECT TNAME, DNAME, SAL
FROM TEACHER
WHERE (DNAME='计算机' OR DNAME='生物')
AND SAL>1000
ORDER BY SAL
可以发现,当在OR运算符连接的两个条件加上括号( )后,得到了需要的查询结果。这是因为,括号( )的优先级高于AND运算符,执行过程就先于AND运算符。
注意 当OR运算符和AND运算符同时运用时,建议用户不要考虑其默认的优先级顺序,而是采用括号( )来实现需要的执行顺序,这样可以增强程序的可读性。
SQL 中多个 and or 的组合运算的更多相关文章
- SQL中对于两个不同的表中的属性取差集except运算
SQL中对两个集合取差集运算,使用except关键字,语法格式如下: SELECT column_name(s) FROM table_name1 EXCEPT SELECT column_name( ...
- [六] 函数式接口的复合方法示例 predicate 谓词逻辑运算 Function接口 组合运算 比较器 逆序 比较链
复合的方法 有些函数式接口提供了允许复合的方法 也就是可以将Lambda表达式复合成为一个更加复杂的方法 之前的章节中有说到: 接口中的compose, andThen, and, or, negat ...
- 学习sql中的排列组合,在园子里搜着看于是。。。
学习sql中的排列组合,在园子里搜着看,看到篇文章,于是自己(新手)用了最最原始的sql去写出来: --需求----B, C, F, M and S住在一座房子的不同楼层.--B 不住顶层.C 不住底 ...
- 在论坛中出现的比较难的sql问题:30(row_number函数 物料组合问题)
原文:在论坛中出现的比较难的sql问题:30(row_number函数 物料组合问题) 在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所 ...
- SQL中inner join、outer join和cross join的区别
对于SQL中inner join.outer join和cross join的区别简介:现有两张表,Table A 是左边的表.Table B 是右边的表.其各有四条记录,其中有两条记录name是相同 ...
- PL/SQL中SELECT总结
一.SELECT 语句的各个关键词的顺序及作用简解(这个我简略点写~) 1.SELECT 2.FROM 3.WHERE 4.GROUP BY ---对结果集进行分组,通常与聚合函数一起使用 5.H ...
- SQL中的连接可以分为内连接,外连接,以及交叉连接 。
SQL中的连接可以分为内连接,外连接,以及交叉连接 . 1. 交叉连接CROSS JOIN 如果不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积: 举例, ...
- SQL 中ROLLUP 用法
SQL 中ROLLUP 用法 ROLLUP 运算符生成的结果集类似于 CUBE 运算符生成的结果集. 下面是 CUBE 和 ROLLUP 之间的具体区别: CUBE 生成的结果集显示了所选列中值的所有 ...
- sql中的case when
sql语言中有没有类似C语言中的switch case的语句?? 没有,用case when 来代替就行了. 例如,下面的语句显示中文年月 select ...
随机推荐
- MongoDB在MacOS上的客户端Robo 3T 的简单使用(二)
最近写了一个用node来操作MongoDB完成增.删.改.查.排序.分页功能的示例,并且已经放在了服务器上地址:http://39.105.32.180:3333. 本篇文章只做简单介绍,能够使用起来 ...
- visio中如何取消跨线和去掉页边距
比较来说,写论文visio和inkscape都不可缺少. 比如visio跨线的问题,已经遇到过两次忘记了.这次截个图作为记录.其实就是在“设计”一栏里,把连接线里面的跨线显示的对勾去掉即可. *** ...
- Activity全屏沉浸状态
public class MainActivity extends AppCompatActivity { private static final String TAG = "MainAc ...
- iOS11访问相册权限变更问题
手机升到iOS 11后 发现之前正常的图片保存功能无法正常使用 会闪退 经测试发现应该是权限没有开启的原因 但是NSPhotoLibraryUsageDescription已经写入plist ...
- 在使用easyui datagrid在tab中遇到的问题
当切换tab时,数据加载了,但是table的宽和高不能不能够初始化. 郁闷了好久解决了这个问题: 在页面加载时和切换tab时,获取当前tab的名字,进行内容的初始化 $('a[name="m ...
- ES modules
注意:这篇文章讲的是正经的es module规范 及浏览器的实现!webpack项目中es module会被parse成commonjs,和这个没大关系! 总结: ES模块加载的主要过程: 构造 —— ...
- PAT 天梯赛练习集 L1-006. 连续因子
题目链接:https://www.patest.cn/contests/gplt/L1-006 一个正整数N的因子中可能存在若干连续的数字.例如630可以分解为3*5*6*7,其中5.6.7就是3个连 ...
- Vue组件之作用域插槽
写作用域插槽之前,先介绍一下Vue中的slot内容分发: 如果<child-component></child-component>标签之间没有插入那两个p标签的话,页面会显示 ...
- u-boot for tiny210 ver1.0(by liukun321咕唧咕唧)
新版本下载: 下面的链接提供了较新版本的源码 ver4.0源码下载:u-boot for tiny210 ver4.0 ver3.1源码下载: u-boot for tiny210 ver3.1 v ...
- S5PV210 三个Camera Interface/CAMIF/FIMC的区别
S5PV210有三个CAMIF单元,分别为CAMIF0 CAMIF1和CAMIF2.对应着驱动中的fimc0, fimc1, fimc2.在三星datasheet和驱动代码中CAMIF和FIMC(Fu ...