LambdaQueryWrapper如何使用in
时间: 2023-11-20 18:54:25 浏览: 140
你应该知道的这些Mybatis-Plus使用技巧(小结)
LambdaQueryWrapper提供了inSql()方法来使用in操作符。使用inSql()方法,可以将一个子查询作为in操作符的参数,该子查询将返回一组值,这些值将与查询的列进行比较。下面是一个使用inSql()方法的示例代码:
```
List<Integer> groupIdds = Arrays.asList(1, 2, 3, 4);
LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.inSql(User::getId, "SELECT id FROM user WHERE status = 1")
.in(User::getGroupId, groupIdds);
List<User> userList = userMapper.selectList(queryWrapper);
```
在上面的代码中,我们首先创建了一个包含一组值的List对象groupIdds,然后创建了一个LambdaQueryWrapper对象queryWrapper。接下来,我们使用inSql()方法将一个子查询作为in操作符的参数,该子查询将返回一组id值,这些值将与User表中的id列进行比较。最后,我们使用in()方法将groupIdds列表中的值与User表中的groupId列进行比较。最终,我们使用selectList()方法执行查询,并将结果存储在一个List对象userList中。
阅读全文