最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
mybatisplus where QueryWrapper加括号嵌套查询方式代码示例
时间:2022-06-29 01:58:16 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下mybatisplus where QueryWrapper加括号嵌套查询方式代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
之前的代码是这个样子的:
QueryWrapperwrapper = new QueryWrapper<>(); wrapper.eq("phoneNumber", phone); if (StringUtils.isEmpty(scenetype)){ wrapper.isNull("scenetype").or().eq("scenetype", ""); } wrapper.eq("delFlag", "0");
相对应的SQL语句如下:
WHERE( phoneNumber = 156****8888 AND scenetype IS NULL OR scenetype = "" AND delFlag = 0)
这并不是我想要的sql语句,查询的数据也不正确,对scenetype的查询应该是括起来的,满足其一条件即可,也就是这样:
WHERE( phoneNumber = 156****8888 AND (scenetype IS NULL OR scenetype = "") AND delFlag = 0)
相对应的代码应该这样写才对:
QueryWrapperwrapper = new QueryWrapper<>(); wrapper.eq("phoneNumber", phone); if(StringUtils.isEmpty(scenetype)) { wrapper.and( e -> e.isNull("scenetype") .or().eq("scenetype", "") ); } wrapper.eq("delFlag", "0");
mybatisplus查询语句加括号(.or(),.and())
java代码:
QueryWrapperwrapper = new QueryWrapper<>(); wrapper.ne("id", param.getId()) wrapper.and(QueryWrapper -> QueryWrapper.eq("name", name).or().eq("mark", mark)); entityMapper.selectList(wrapper);
等价sql
SELECT id FROM t_entity WHERE (id <> ? AND (name = ? OR mark = ?))
每个and相当于一个括号
相关文章
- 豚豚剧App官方入口下载:海量影视资源一键解锁 02-04
- 漫蛙漫画网APP最新版本下载-漫蛙正版漫画资源免费安装入口 02-04
- picacg2.1.2.3.4最新版-picacg安装包高速下载 02-04
- 百度网盘网页版入口-百度网盘网页端登录平台 02-04
- 漫蛙漫画网页最新下载入口-漫蛙漫画APP安卓苹果安装包下载 02-04
- 腾讯视频24小时人工客服热线详情-腾讯视频官方人工客服地址 02-04