mybatisPlus中怎么利用 QueryWrapper 实现复杂查询

发布时间:2021-08-05 16:25:53 作者:Leah
来源:亿速云 阅读:645
# MybatisPlus中怎么利用QueryWrapper实现复杂查询

MybatisPlus的`QueryWrapper`是构建动态SQL查询条件的强大工具,特别适合处理复杂查询场景。以下是几种典型用法:

### 1. 多条件组合
通过链式调用实现AND/OR逻辑:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("status", 1)
       .ge("age", 18)
       .like("name", "张");

2. 嵌套条件

使用nested方法实现条件分组:

wrapper.nested(i -> i.eq("type", 1).or().eq("type", 2))
       .between("create_time", start, end);

3. 子查询

通过inSql/exists实现子查询:

wrapper.inSql("dept_id", "SELECT id FROM dept WHERE level > 3");

4. 自定义SQL片段

支持原生SQL片段嵌入:

wrapper.apply("date_format(create_time,'%Y-%m') = '2023-01'");

QueryWrapper还支持havingorderBy等聚合操作,配合Lambda写法可进一步提升代码可读性。 “`

推荐阅读:
  1. MyBatisPlus 自定义sql语句的实现
  2. MybatisPlus中如何实现Sql的多表查询

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mybatis-plus querywrapper

上一篇:android中怎么实现屏幕适配

下一篇:如何解决某些HTML字符打不出来的问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》