QueryWrapper (A,B) in ((xxx,xx), (yyy,yy))
时间: 2023-09-18 21:09:19 浏览: 71
如果要使用 QueryWrapper 实现多列 in 查询,其中每列的值也是一个元素列表,可以使用 QueryWrapper 的 in 方法,该方法可以接受一个 List<List<Object>> 对象作为参数,其中每个内部列表表示一组查询条件,内部列表的元素依次对应每个查询字段。
下面是一个示例代码:
```java
List<List<Object>> values = Arrays.asList(
Arrays.asList("xxx", "xx"),
Arrays.asList("yyy", "yy")
);
List<User> userList = new QueryWrapper<User>()
.in(Arrays.asList("A", "B"), values)
.list();
```
该代码使用 QueryWrapper 查询 A 列和 B 列中包含 ("xxx", "xx") 或 ("yyy", "yy") 的用户,并将查询结果存储在 userList 中。
需要注意的是,in 方法的第一个参数是一个 List,表示要查询的列名列表。第二个参数是一个 List<List<Object>>,表示要查询的元素列表。在元素列表中,每个内部列表的元素个数必须与列名列表的个数相同,否则会抛出异常。
相关问题
QueryWrapper (A,B) in ((xxx,yyy), (xx,yy))
如果要使用 QueryWrapper 实现多列 in 查询,其中每列的值也是一个元素列表,可以使用 QueryWrapper 的 in 方法,该方法可以接受一个 List<List<Object>> 对象作为参数,其中每个内部列表表示一组查询条件,内部列表的元素依次对应每个查询字段。
下面是一个示例代码:
```java
List<List<Object>> values = Arrays.asList(
Arrays.asList("xxx", "yyy"),
Arrays.asList("xx", "yy")
);
List<User> userList = new QueryWrapper<User>()
.in(Arrays.asList("A", "B"), values)
.list();
```
该代码使用 QueryWrapper 查询 A 列和 B 列中包含 ("xxx", "yyy") 或 ("xx", "yy") 的用户,并将查询结果存储在 userList 中。
需要注意的是,in 方法的第一个参数是一个 List,表示要查询的列名列表。第二个参数是一个 List<List<Object>>,表示要查询的元素列表。在元素列表中,每个内部列表的元素个数必须与列名列表的个数相同,否则会抛出异常。
阅读全文