返回顶部
首页 > 资讯 > 数据库 >解决mysql 组合AND和OR带来的问题
  • 509
分享到

解决mysql 组合AND和OR带来的问题

mysqlAND组合OR 2022-05-17 23:05:00 509人浏览 安东尼
摘要

如下所示: SELECT prod_name,prod_price FROM products WHERE vend_id = 1002 OR vend_id= 1003 AND prod_pric

如下所示:

SELECT prod_name,prod_price FROM products WHERE vend_id = 1002 OR vend_id= 1003 AND prod_price >= 10;

上面这条语句 返回的结果不是我们想要的。

分析:

原因在于计算的次序。sql 在处理OR操作符前 优先处理AND操作符。当SQK看到上述WHERE子句时,由于AND在计算次序中优先级更高,操作符被错误的组合了。

此问题的解决方法是使用圆括号明确地分组相应的操作符。

请看下面的SELECT 语句


 SELECT prod_name,prod_price
    FROM products

    WHERE( vend_id = 1002 OR vend_id= 1003) AND prod_price >= 10;

补充知识:Mysql| 组合where子句过滤数据(AND,OR,IN,NOT)

Mysql 允许使用多个where子句,组合where子句允许使用两种方式使用:AND 和OR子句的方式使用.

数据库中的操作符号:AND , OR , IN , NOT.

AND

SELECT * FROM products WHERE products.vend_id = 1003 AND products.prod_price <= 10;

OR

SELECT * FROM products WHERE products.vend_id = 1002 OR products.vend_id = 1003 ;

IN

建议能使用IN的子句中不使用OR,IN行性能好,方便理解.

SELECT * FROM products WHERE products.vend_id IN (1002,1003);

NOT:

mysql对NOT的支持仅在对IN,BETWEEN,EXISTS子句取反,这与其他多数数据库对各种条件都支持不同.

SELECT * FROM products WHERE products.vend_id NOT IN (1002,1003);

注意:

在同时有AND和OR的子句中,mysql是优先处理AND操作的.一般建议使用()来确定处理顺序和消除歧义.

比如:

SELECT * FROM products WHERE (products.vend_id= 1002 OR products.vend_id=1003) AND prod_price >= 10;

以上这篇解决mysql 组合AND和OR带来的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持自学编程网。

您可能感兴趣的文档:

--结束END--

本文标题: 解决mysql 组合AND和OR带来的问题

本文链接: https://lsjlt.com/news/9941.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 解决mysql 组合AND和OR带来的问题
    如下所示: SELECT prod_name,prod_price FROM products WHERE vend_id = 1002 OR vend_id= 1003 AND prod_pric...
    99+
    2022-05-17
    mysql AND组合OR
  • mybatis and和or的组合查询
    在mybatis中涉及到和、或者的查询需要注意,一招不慎,会导致查询出来的结果不准确。 究其原因,是and优先级高于or。凡是查询中涉及到or,需要将or 条件和与之并肩查询的条件用括号括起来。 来看错误的写法: select ...
    99+
    2023-09-05
    mybatis java mysql
  • mysql联合查询中and和or的使用
    这篇文章主要讲解了“mysql联合查询中and和or的使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql联合查询中and和or的使用”吧! 需求...
    99+
    2024-04-02
  • 如何解决SQL语句中AND和OR执行顺序遇到的问题
    这篇文章将为大家详细讲解有关如何解决SQL语句中AND和OR执行顺序遇到的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。场景1、有一张学生表Student,表字段包括...
    99+
    2024-04-02
  • springboot跨域问题带来的BUG怎么解决
    这篇文章主要介绍了springboot跨域问题带来的BUG怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇springboot跨域问题带来的BUG怎么解决文章都会有所收获,下面我们一起来看看吧。需求前端用...
    99+
    2023-06-27
  • 怎么解决mysql中的No such file or directory问题
    这篇文章主要讲解了“怎么解决mysql中的No such file or directory问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决mys...
    99+
    2024-04-02
  • Python 和 Apache:解决路径同步问题的最佳组合?
    在开发 Web 应用程序时,路径同步是一个常见的问题,特别是在使用 Apache 作为 Web 服务器时。通常情况下,开发人员需要确保应用程序和服务器的文件路径匹配,否则可能会导致应用程序无法正常运行。为了解决这个问题,许多开发人员转向 ...
    99+
    2023-09-29
    apache path 同步
  • 解决mysql启动时的Failed to start LSB: start and stop MySQL问题
    前言: 在下载glibc版本的Mysql时,启动mysql服务时出现了如下错误 网上搜了许多种方法:查看错误日志,或者df -h查看磁盘是否已满等都未解决,后来尝试了重新对数据库进行初始化后才解决了该问题.  数据库初始化: 在对数据库重...
    99+
    2023-09-06
    mysql 数据库
  • inline-block带来的元素间距问题怎么解决
    本篇内容主要讲解“inline-block带来的元素间距问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“inline-block带来的元素间距问题怎么...
    99+
    2024-04-02
  • 关于vue双向绑定带来的问题及解决
    目录vue双向绑定带来的问题问题场景解决方案vue双向绑定的原理总结MVVMvue当中的双向绑定vue双向绑定带来的问题 问题场景 查询完表格数据后 通过作用域插槽,将该行数据传到修...
    99+
    2024-04-02
  • 软件解决Linux和Windows双启动带来的时间同步问题
    这篇文章给大家分享的是有关软件解决Linux和Windows双启动带来的时间同步问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。想在保留 Windows 系统的前提下尝试其他 Linux 发行版,双启动是个常用...
    99+
    2023-06-16
  • 如何解决ReactuseEffect钩子带来的无限循环问题
    目录什么导致的无限循环以及如何解决它们如何解决这个问题使用函数作为依赖项使用数组作为依赖项将对象作为依赖项传递传递不正确的依赖项结尾React的useEffect Hook可以让用户...
    99+
    2024-04-02
  • 如何解决Linq多条件组合问题
    这篇文章主要为大家展示了“如何解决Linq多条件组合问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决Linq多条件组合问题”这篇文章吧。多种查询评价的条件:1.Linq多条件之查询类型...
    99+
    2023-06-17
  • Android中ViewPager带来的滑动卡顿问题解决要点解析
    问题说明: 当SwipeRefreshLayout中放置了ViewPager控件,两者的滑动会相互冲突.具体表现为ViewPager的左右滑动不顺畅,容易被SwipeRefre...
    99+
    2022-06-06
    viewpager Android
  • 如何解决mysql错误……is marked as crashed and should be的问题
    这篇文章将为大家详细讲解有关如何解决mysql错误……is marked as crashed and should be的问题,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关...
    99+
    2024-04-02
  • numpy和ASP:如何解决数据类型同步所带来的性能问题?
    在数据处理的过程中,我们常常需要使用不同的编程语言来处理不同的数据类型。这就带来了一个问题,就是如何解决数据类型同步所带来的性能问题。在本文中,我们将介绍如何使用numpy和ASP来解决这个问题,并且我们还将穿插一些演示代码来帮助读者更好...
    99+
    2023-10-30
    numpy 同步 数据类型
  • 怎么解决React useEffect钩子带来的无限循环问题
    本篇内容主要讲解“怎么解决React useEffect钩子带来的无限循环问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决React useEffect钩子带来的无...
    99+
    2023-07-02
  • 如何解决CSS3的opacity属性带来的层叠顺序问题
    这篇文章主要介绍“如何解决CSS3的opacity属性带来的层叠顺序问题”,在日常操作中,相信很多人在如何解决CSS3的opacity属性带来的层叠顺序问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用...
    99+
    2024-04-02
  • MySQL中server_id一致带来的问题如何处理
    小编给大家分享一下MySQL中server_id一致带来的问题如何处理,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 简介 我们都知道在MySQL搭建复制环境的时候,需要设置每个ser...
    99+
    2024-04-02
  • mysql分组排序问题怎么解决
    在MySQL中,可以使用GROUP BY子句将数据按照指定的列进行分组。然后可以使用ORDER BY子句对每个分组内的数据进行排序。...
    99+
    2024-04-09
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作