mybatis-plus中wrapper的in用法(详细)
时间: 2024-01-08 22:04:21 浏览: 151
MyBatis-Plus中的Wrapper提供了in方法来构造IN条件查询,in方法的使用方式如下:
```java
/**
* in方法的使用
* @param column 数据库表中的列名
* @param values 匹配的值,可以是一个数组或集合,也可以是多个参数
* @return
*/
public QueryWrapper<T> in(String column, Object... values);
```
其中,column是数据库表中的列名,values是匹配的值,可以是一个数组或集合,也可以是多个参数。
使用in方法构造IN条件查询的示例代码如下:
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.in("id", 1, 2, 3);
```
上述代码构造了一个IN条件查询,查询id为1、2、3的记录。
如果要查询id在一个集合中的记录,可以将集合作为in方法的参数传入,例如:
```java
List<Integer> idList = Arrays.asList(1, 2, 3);
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.in("id", idList);
```
上述代码构造了一个IN条件查询,查询id在idList集合中的记录。
除了in方法外,Wrapper还提供了notIn方法来构造NOT IN条件查询,使用方式与in方法类似。
```java
/**
* notIn方法的使用
* @param column 数据库表中的列名
* @param values 匹配的值,可以是一个数组或集合,也可以是多个参数
* @return
*/
public QueryWrapper<T> notIn(String column, Object... values);
```
使用notIn方法构造NOT IN条件查询的示例代码如下:
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.notIn("id", 1, 2, 3);
```
上述代码构造了一个NOT IN条件查询,查询id不为1、2、3的记录。
如果要查询id不在一个集合中的记录,可以将集合作为notIn方法的参数传入,例如:
```java
List<Integer> idList = Arrays.asList(1, 2, 3);
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.notIn("id", idList);
```
上述代码构造了一个NOT IN条件查询,查询id不在idList集合中的记录。
阅读全文