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 的组合运算的更多相关文章

  1. SQL中对于两个不同的表中的属性取差集except运算

    SQL中对两个集合取差集运算,使用except关键字,语法格式如下: SELECT column_name(s) FROM table_name1 EXCEPT SELECT column_name( ...

  2. [六] 函数式接口的复合方法示例 predicate 谓词逻辑运算 Function接口 组合运算 比较器 逆序 比较链

    复合的方法 有些函数式接口提供了允许复合的方法 也就是可以将Lambda表达式复合成为一个更加复杂的方法 之前的章节中有说到: 接口中的compose, andThen, and, or, negat ...

  3. 学习sql中的排列组合,在园子里搜着看于是。。。

    学习sql中的排列组合,在园子里搜着看,看到篇文章,于是自己(新手)用了最最原始的sql去写出来: --需求----B, C, F, M and S住在一座房子的不同楼层.--B 不住顶层.C 不住底 ...

  4. 在论坛中出现的比较难的sql问题:30(row_number函数 物料组合问题)

    原文:在论坛中出现的比较难的sql问题:30(row_number函数 物料组合问题) 在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所 ...

  5. SQL中inner join、outer join和cross join的区别

    对于SQL中inner join.outer join和cross join的区别简介:现有两张表,Table A 是左边的表.Table B 是右边的表.其各有四条记录,其中有两条记录name是相同 ...

  6. PL/SQL中SELECT总结

      一.SELECT 语句的各个关键词的顺序及作用简解(这个我简略点写~) 1.SELECT 2.FROM 3.WHERE 4.GROUP BY ---对结果集进行分组,通常与聚合函数一起使用 5.H ...

  7. SQL中的连接可以分为内连接,外连接,以及交叉连接 。

    SQL中的连接可以分为内连接,外连接,以及交叉连接 . 1. 交叉连接CROSS JOIN 如果不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积: 举例, ...

  8. SQL 中ROLLUP 用法

    SQL 中ROLLUP 用法 ROLLUP 运算符生成的结果集类似于 CUBE 运算符生成的结果集. 下面是 CUBE 和 ROLLUP 之间的具体区别: CUBE 生成的结果集显示了所选列中值的所有 ...

  9. sql中的case when

    sql语言中有没有类似C语言中的switch case的语句?? 没有,用case   when   来代替就行了.            例如,下面的语句显示中文年月         select ...

随机推荐

  1. Chrome 开发工具系列

  2. Linux apache tomcat

    [root@node1 ~]# mv jdk-7u79-linux-x64.tar.gz /usr/local/[root@node1 ~]# cd /usr/local/[root@node1 lo ...

  3. crm需求分析步骤

    # CRM开发顺序# 需求分析# 思维导图# 业务场景分析#-------------------------------------## 原型图(Demo)# Axure#------------- ...

  4. node——underscore的使用

    我在做新闻页面时,需要将之前存好点的data.json里的数据显示在首页上,而首页的每条新闻数据不能直接写定在上面,所以我们要将data里面的数据传递进去.我们需要使用underscore的templ ...

  5. office2016 下载直通车

    下载地址 微软官方序列号(产品激活密钥):NKGG6-WBPCC-HXWMY-6DQGJ-CPQVG. 激活工具下载 分享源地址

  6. linux 模块编译步骤(原)

    linux 模块编译步骤(原) 博主推荐:<Linux命令模板Licote(原)> 本文将直接了当的带你进入linux的模块编译.当然在介绍的过程当中,我也会添加一些必要的注释,以便初学者 ...

  7. vuex中mutations与actions的区别

    要执行vuex中的函数,有两种方法: 1.commit,例如this.$store.commit("GETMODULESELECTLIST"); //mutations中的方法 2 ...

  8. 基于bootstrap的分页组件-Bootstrap Paginator

    效果

  9. Git:与GitHub搭配及SSH登录

    远程库(GitHub)上的地址 搭建本地库 准备一个文件 将地址用别名存在git上 推送到远程库 克隆 克隆的效果 1)完整的把远程库下载到本地 2)别名也完整保留 3)同时也初始化了本地库 邀请团队 ...

  10. W10子系统UBantu命令安装Redis及其启动

    W10子系统UBantu命令安装Redis及其启动 打开W10子系统UBantu 安装Redis $sudo apt-get install redis-server 启动Redis redis-se ...