mybatis plus sql in写法
时间: 2023-09-25 18:11:55 浏览: 160
mybatis-plus 实践及架构原理
3星 · 编辑精心推荐
MyBatis-Plus 提供了 `in` 查询的多种写法,以下是几种常用的方式:
1. 使用 `in` 方法:通过 `in` 方法可以传入一个集合或数组作为查询条件。
```java
List<Integer> ids = Arrays.asList(1, 2, 3);
List<User> userList = userMapper.selectList(new QueryWrapper<User>().in("id", ids));
```
2. 使用 `inSql` 方法:通过 `inSql` 方法可以传入一个 SQL 子查询作为查询条件。
```java
String subQuery = "SELECT id FROM user WHERE age > 18";
List<User> userList = userMapper.selectList(new QueryWrapper<User>().inSql("id", subQuery));
```
3. 使用 lambda 表达式:可以直接使用 lambda 表达式构建 `in` 查询条件。
```java
List<Integer> ids = Arrays.asList(1, 2, 3);
List<User> userList = userMapper.selectList(Wrappers.<User>lambdaQuery().in(User::getId, ids));
```
4. 使用条件构造器:可以使用条件构造器来动态构建 `in` 查询条件。
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.in("id", 1, 2, 3);
List<User> userList = userMapper.selectList(queryWrapper);
```
以上是一些常见的 MyBatis-Plus 中 `in` 查询的写法,你可以根据具体的场景选择适合的方法。
阅读全文