MySQL查询条件OR导致模糊查询失效

这篇具有很好参考价值的文章主要介绍了MySQL查询条件OR导致模糊查询失效。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

起因:查出来的列表数据,通过查询条件过滤,发现过滤条件并不起作用

检查发现:where查询条件里面有or的过滤条件,用来进行权限控制,模糊查询条件本来是起效果的,但是OR的条件一执行,就有多了些数据

代码:

SELECT
 item_apply_id,
 ....
FROM
 loan_item_apply 
WHERE
 item_apply_title LIKE '%临海%' 
 AND ( createBy =10000131273521 
				OR item_apply_a =10000131273521 
				OR item_apply_b =10000131273521 
				OR createBy = 0 
				OR createBy IS NULL 
				OR createBy IN ( SELECT UNDERUSERID FROM sys_user_under WHERE USERID =10000131273521) ) 
 AND doc_status != 1 
--下面的查询条件一添加,就会再多出来一些符合下面查询条件的数据
 OR EXISTS ( SELECT 1 FROM bl_project_approval bpa 
						 WHERE bpa.check_person LIKE CONCAT( '%',10000131273521, '%' ) 
						 AND bpa.project_approval_id = loan_item_apply.project_approval_id ) 

期望的结果:先查出来所有符合要求的,然后再根据过滤条件去过滤,所以这里做的处理是,再套一层,把这个查询出来的结果当成一个临时表,再select这个临时表,用过滤条件过滤这个临时表的数据

⚠️⚠️⚠️
查询条件有OR的条件的话,需要注意文章来源地址https://www.toymoban.com/news/detail-815059.html

到了这里,关于MySQL查询条件OR导致模糊查询失效的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu使用Glmark2进行跑分

    Glmark2 是一个基于 OpenGL 2.0 和 OpenGL ES 2.0 开发的benchmark程序,主要用于对GPU的基准测试。 安装依赖的开发工具 安装依赖的程序库 获取 glmark2 源代码 到当前 glmark2-test/ 目录 编译 glmark2 安装 glmark2 运行 glmark2 运行过程 测试结果 卸载glmark2 由于上面的安装方法是纯净的,可执行程

    2024年02月11日
    浏览(7)
  • 使用verdaccio搭建私有组件库

    最近公司需要根据现有的公用组件搭建一套私有组件库,方便其他项目使用,然后经过一系列尝试和走了许多坑,终于搭建成功了,这里记录下搭建步骤,希望对你有些帮助。 由于公司组件库越来越多,导致每次去基础库里面cv组件特别麻烦,特别是还有这些组件有一些其他

    2024年02月03日
    浏览(46)
  • js遍历对象key,value

    方法一:转化为操作数组forEach遍历 遍历对象属性 关于Object.keys()方法 Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和正常循环遍历该对象时返回的顺序一致。 例子 遍历对象属性值 关于Object.values()方法 object .values()静态方

    2024年02月11日
    浏览(34)
  • neovim下进行接口测试,并且登录token自动保存

    neovim下进行接口测试,并且登录token自动保存 最近一段时间最大的乐趣就是用自己配置的neovim写go代码, 现在用go代码写的接口,一开始用curl测试接口,感觉不是很方便。 就尝试能否在neovim发起接口测试。 功夫不负有心人,找到了一个插件rest.nvim。记录下安装和自己定制的

    2024年02月02日
    浏览(33)
  • .NET Core/.NET6 使用DbContext 连接数据库,SqlServer

    安装以下NuGet包 Microsoft.EntityFrameworkCore.SqlServer:SQL server 需要添加包 Microsoft.EntityFrameworkCore.Tools Newtonsoft.Json:用于Json格式转换 创建一个实体类来表示数据库表。在项目中创建一个名为Customer.cs的文件,并添加以下代码 创建一个数据库上下文类,用于定义实体类和数据库连接

    2024年02月07日
    浏览(39)
  • 云计算:Linux 部署 OVS 集群(控制端)实现OpenFlow

    目录  一、实验 1.环境 2.Linux 部署 OVS 集群(控制端) 3.控制端对接服务端OVS网元 4.服务端OVS添加流表 5.服务端删除OVS 二、问题 1. ODL如何查找已安装插件 2.查看流表显示不全 3.如何删除OVS流表 (1) 主机 表1 宿主机 主机 架构 软件 IP 网卡 备注 ovs_controller 控制端 karaf 0.7.3 192.1

    2024年04月16日
    浏览(34)
  • 瑞_Java开发手册_(三)单元测试

    🙊前言:本文章为瑞_系列专栏之《Java开发手册》的单元测试篇。由于博主是从阿里的《Java开发手册》学习到Java的编程规约,所以本系列专栏主要以这本书进行讲解和拓展,有需要的小伙伴可以点击链接下载。本文仅供大家交流、学习及研究使用,禁止用于商业用途,违者

    2024年01月20日
    浏览(30)
  • 使用WebApi+Vue3从0到1搭建《权限管理系统》:二、搭建JWT系统鉴权

    视频地址:【WebApi+Vue3从0到1搭建《权限管理系统》系列视频:搭建JWT系统鉴权-哔哩哔哩】 https://b23.tv/R6cOcDO qq群:801913255 一、在appsettings.json中设置鉴权属性 二、新建模型 添加模型JwtSettingModel其中字段和appsettings.json中的字段一样,如下 三、新建解析appsettings.json节点的帮助类

    2024年04月22日
    浏览(29)
  • KUKA机器人通过3点法设置工作台基坐标系的具体方法

    具体方法和步骤可参考以下内容: 进入主菜单界面,依次选择“投入运行”—“测量”—基坐标,选择“3点法”, 在系统弹出的基坐标编辑界面,给基座标编号为3,命名为table1,然后单击“继续”按钮,进行下一步操作, 在弹出的参考工具界面上选择编号为1,名称为“

    2024年02月03日
    浏览(41)
  • Vue核心语法

    我们以前都是用的框架来搭建的,省去了很多内容,今天我们从原始的方式来使用vue,下面是下载地址 未使用响应式 我们把注释去掉 从上面的演示可以看到,没有用响应式的时候,如果我们要变更元素,需要处理数据的逻辑,还需要再次操作一下DOM,很繁琐 let、var、const

    2024年02月12日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包