当前位置: 首页 > news >正文

【Mybatis-Plus】or拼接

Mybatis-Plus的or拼接是个坑:
这是需要的结果:

queryWrapper.and(c->c.or(a->a.eq("qcs3.status", "SIGNING").eq("qcs.status", "SIGNING")).or(b->b.eq("qcs.status","INVALIDING").eq("qcs3.status","INVALIDING"))).eq("qcs.is_del",0);

执行的sql:

where((qcs3.status = 'SIGNING'and qcs.status = 'SIGNING')or (qcs.status = 'INVALIDING'and qcs3.status = 'INVALIDING'))and qcs.is_del = 0

但是很容易写成:

     queryWrapper.and(a->a.eq("qcs3.status", "SIGNING").eq("qcs.status", "SIGNING")).or(b->b.eq("qcs.status","INVALIDING").eq("qcs3.status","INVALIDING")).eq("qcs.is_del",0);;

执行的sql:

where((qcs3.status = 'SIGNING'and qcs.status = 'SIGNING')or (qcs.status = 'INVALIDING'and qcs3.status = 'INVALIDING'))and qcs.is_del = 0

or拼接常用的写法:

例1: eq(“id”,1).or().eq(“name”,“老王”)—>id = 1 or name = ‘老王’

例2: or(i -> i.eq(“name”, “李白”).ne(“status”, “活着”))—>or (name = ‘李白’ and status <> ‘活着’)

http://www.lryc.cn/news/104400.html

相关文章:

  • SpringBoot项目部署在Windows与Centos上
  • 网站服务器出错的原因分析和解决方法
  • 电影推荐系统】系统初步搭建及离线个性化推荐
  • Redis 集群 (cluster)
  • 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(19)-Fiddler精选插件扩展安装,将你的Fiddler武装到牙齿
  • 解决spring.thymeleaf.cache=false不起作用的问题
  • 企业可以申请DV https证书吗
  • 记一次phpmyadmin巧妙利用
  • HTML+CSS+JavaScript:轮播图的自动播放、手动播放、鼠标悬停暂停播放
  • 微信小程序:生成二维码带参数并获取值
  • 《Java面向对象程序设计》学习笔记——第 3 章 运算符、表达式和语句
  • XML约束和解析
  • 网络层:IP协议/Mac协议
  • 让你不在好奇怎么把录音转化成文字更快捷
  • 分布式异步任务处理组件(四)
  • 【C++】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值
  • Spring项目整合策略模式~实战应用
  • mybatis PageHelper的坑---记录
  • uniapp微信小程序下载文件并打开
  • 安卓Intent打开系统进程汇总
  • python学习(廖雪峰的官方网站部分,自学笔记)
  • python题-检查该字符串的括号是否成对出现
  • 3ds Max建模教程:模拟布料拖拽撕裂和用剑撕裂两种效果
  • 数据可视化(4)散点图及面积图
  • Redis - 数据过期策略
  • 英文论文(sci)解读复现:基于YOLOv5的自然场景下苹果叶片病害实时检测
  • 【Liux下6818开发板(ARM)】实现简易相册
  • Kubernetes(K8s)从入门到精通系列之六:K8s的基本概念和术语之存储类
  • Spark-统一内存模型
  • 类的继承和super关键字的使用(JAVA)