在书写代码时常常容易出现,or和and的混合使用。首先,要明确的是and相对于or来说,前者的优先级是要更高。

我们先来看一下,经常容易犯的错误例子:

语句一: select * from  tableNameA  where fieldA = 'xx' or ffieldB = 'cc' and fieldC='dd';

我们来解读一下语句一所表达的意思:在tableNameA表中,搜索(第一部分: fieldA = 'xx' )或者 (第二部分 :fieldB = 'cc' and fieldC='dd' )。然而我们与我们想要表达的意思相悖(第一部分:fieldA = 'xx' or ffieldB = 'cc'),(第二部分 :fieldC='dd' )。

下面我们来看一下实例:

我创建了一个test表,有如下数据:

一般我们理解的or语句写法: select * from test where name = 'test2' or user_email = 'test3@qq.com' and  age = '20';

结果:

正确的语句写法: select * from test where (name = 'test2' or user_email = 'test3@qq.com') and  age = '20';

依据以上的例子我们可以看出来,是有明显区别的。

总结:要使用and和or的混合使用,or条件要用 ()包括在一起,组成一个部分,不然,并不能达到预期的效果。

原生Mysql之and和or混合使用相关推荐

  1. java连接mysql数据库连接池_java使用原生MySQL实现数据的增删改查以及数据库连接池技术...

    一.工具类及配置文件准备工作 1.1 引入jar包 使用原生MySQL,只需要用到MySQL连接的jar包,maven引用方式如下: mysql mysql-connector-java 5.1.48 ...

  2. 性能达到原生 MySQL 七倍,华为云 Taurus 技术解读

    吴林.黄伟 近日,华为云自研关系型数据库 Taurus 公开亮相.作为华为云自研的最新一代云原生分布式数据库,Taurus 完全兼容 MySQL 8.0,采用计算与存储分离.日志即数据的架构设计,支持 ...

  3. 性能达到原生MySQL七倍,华为云Taurus技术解读

    近日,华为云自研关系型数据库Taurus公开亮相.作为华为云自研的最新一代云原生分布式数据库,Taurus完全兼容 MySQL 8.0,采用计算与存储分离.日志即数据的架构设计,支持1写15读,性能达 ...

  4. mysql中or详细使用方式(Mysql之and和or混合使用) MES

    mysql中or详细使用方式(Mysql之and和or混合使用) 在mysql中,经常会遇到这样的情况,在写条件语句where时,可能会同时有多个条件的"或"或者"与&q ...

  5. springboot原生mysql写法_【Rainbond最佳实践】Spring Boot框架配置MySQL

    Rainbond开源软件介绍: Rainbond是国内首个开源的生产级无服务器PaaS. 深度整合基于Kubernetes的容器管理.多类型CI/CD应用构建与交付.多数据中心的资源管理等技术,提供云 ...

  6. 原生mysql的批量更新及性能测试

    文章目录 一.前言 二.原生的写法 1.用到的函数是case ...when ...then 2.php拼接sql 3.是否能用到索引 三.批量更新的性能测试(50W数据) 1.首先是更新不同数量的性 ...

  7. swoole原生mysql进程池_swoole的mysql连接池怎么弄

    swoole的mysql连接池怎么弄 发布时间:2020-12-28 09:54:07 来源:亿速云 阅读:68 作者:小新 这篇文章给大家分享的是有关swoole的mysql连接池怎么弄的内容.小编 ...

  8. 原生mysql启动_单实例MySQL的启动和关闭的方法

    方法一:常规启动关闭数据库方式(推荐) 常规方法启动数据库 启动MySQL命令 [root@localhost ~]# /etc/init.d/mysql start Starting MySQL.. ...

  9. beego原生mysql查询_go——beego的数据库增删改查

    一直都不理解使用go语言的时候,为什么还要自己去装beego,以为使用go便可以解决所有的问题,结果在朋友的点拨下,才意识到: go与beego的关系就好比是nodejs与thinkjs的关系,因此也 ...

最新文章

  1. Android动态申请多个权限-非第三方框架
  2. Linux下C语言编程-进程的创建
  3. Oracle ORA-00904:invalid identifier 标识符无效
  4. vat可以退税吗_【涨知识】企业对外投资可以申请出口退税吗?
  5. 通用shellcode代码
  6. Http怎么处理长连接
  7. 暴跌343亿,被吐槽太土!中国最惨的老品牌,还有救吗?
  8. Kubernetes Secret
  9. 《R语言机器学习:实用案例分析》——1.8节总结
  10. 执行quartz报错java.lang.NoClassDefFoundError: javax/transaction/UserTransaction
  11. Tensorflow API(二)
  12. win10c盘扩容_如何给磁盘进行扩容/拆分/合并的操作?保姆级教学
  13. 如何将多个图片合成一个pdf
  14. 微软office在线文档_如何使用Microsoft Office密码保护文档和PDF
  15. 华硕天选2键盘背光灯切换颜色
  16. java-asc码形式输出
  17. C语言初学 (两数相加求和)
  18. 投资区块链做到这五步,规避风险!
  19. “四旋翼”无人机“X模式”飞行原理
  20. 各个JDK版本的新特性

热门文章

  1. 毛巾架容易生锈,生锈后要如何处理?
  2. saltstack-本地安装rpm方式
  3. 六大原则之“里氏替代原则(LSP)“笔记
  4. C# Winform基于socket编程的五子棋游戏(带聊天和发送文件功能)
  5. 计算机中真值的概念,【概念辨析】真值、机器数、原码、反码、补码、变形补码、移码...
  6. 一个完整的机器学习项目需要哪些步骤
  7. 产品总监晋升之路(1):选育育留之产品经理胜任力模型
  8. 破解基础----背的滚瓜烂熟差不多就会破解
  9. graphpad如何检测方差齐_GraphPad prism --方差世界之析因分析详细步骤解析
  10. ZOJ 3328 WuXing