MybatisPlus多条件 or()的使用问题小结

 更新时间:2024年05月08日 11:08:28   作者:树欲静而风不止  
这篇文章主要介绍了MybatisPlus多条件 or()的使用问题小结,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧

搞混了一次,特此笔记

1、bitCode or iotStr 跟其他ID一个都不能有重复

queryWrapper.ne(LineProductionPlan::getId,bean.getId());
        queryWrapper.and(i -> i.eq(LineProductionPlan::getBitCode,bean.getBitCode()).or().eq(LineProductionPlan::getIotStr,bean.getIotStr()));

打印sql

2、模糊查询codeOrName变量匹配二个字段

queryWrapper.lambda().and(StrUtil.isNotEmpty(codeOrName), i -> i.like(Point::getName, codeOrName).or().like(Point::getBitCode, codeOrName));

扩展:Mybatis-Plus中or()的使用避坑

1.连接 or()

当需要简单的将两个条件或连接,则最直接的写法为:

QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("status",0).
or().
eq("status",1);
//sql条件为  select * from user where status=0 or status=1

2.连接 or()

当多个条件共同拼接,则最直接的写法为: 要么把or()拼接放最前面,要么用queryWrapper.and(

qr.eq("status", 1).or().like("status", 2)),要不查询的数据会有偏差,queryWrapper.and相当于把两个条件()一块;

QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("status",0).
or().
eq("status",1)
eq("user_name","张三");
//sql条件为  select * from user where status=0 or status=1 and user_name='张三'
QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("user_name","张三").
eq("status",0).
or().
eq("status",1);
//sql条件为  select * from user where user_name='张三' and  status=0 or status=1 
查询出来的数据和select * from user where status=0 or status=1 and  user_name='张三' 不一致
QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("user_name","张三").and(q->q.eq("status",0).
or().
eq("status",1));
select * from user where select * from user where user_name='张三' and (status=0 or status=1 ) 查询出来的数据和select * from user where status=0 or status=1 and  user_name='张三' 一致

到此这篇关于MybatisPlus多条件 or()的使用的文章就介绍到这了,更多相关MybatisPlus多条件 or()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Kotlin 基本语法实例详解

    Kotlin 基本语法实例详解

    这篇文章主要介绍了Kotlin 基本语法实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • 基于SpringBoot整合oauth2实现token认证

    基于SpringBoot整合oauth2实现token认证

    这篇文章主要介绍了基于SpringBoot整合oauth2实现token 认证,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • IntelliJ IDEA 2020安装使用教程详解

    IntelliJ IDEA 2020安装使用教程详解

    这篇文章主要介绍了IntelliJ IDEA 2020安装使用教程,本文通过图文实例相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • springboot如何获取接口下所有实现类

    springboot如何获取接口下所有实现类

    这篇文章主要介绍了springboot如何获取接口下所有实现类问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • Jmeter设置全局变量token过程图解

    Jmeter设置全局变量token过程图解

    这篇文章主要介绍了Jmeter设置全局变量token过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • 如何通过java获取文件名和扩展名

    如何通过java获取文件名和扩展名

    这篇文章主要介绍了如何通过java获取文件名和扩展名,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • java读取properties文件的方法实例分析

    java读取properties文件的方法实例分析

    这篇文章主要介绍了java读取properties文件的方法,实例分析了java读取在项目中与不在项目中properties文件的相关技巧,需要的朋友可以参考下
    2015-06-06
  • Java返回文件时为图片或pdf等设置在线预览或下载功能

    Java返回文件时为图片或pdf等设置在线预览或下载功能

    这篇文章主要介绍了Java返回文件时为图片或pdf等设置在线预览或下载功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • SpringMVC上传文件并保存到本地代码实例

    SpringMVC上传文件并保存到本地代码实例

    这篇文章主要介绍了SpringMVC上传文件并保存到本地代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • 简单谈谈java自定义注解

    简单谈谈java自定义注解

    下面小编就为大家带来一篇简单谈谈java自定义注解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07

最新评论