QueryWrapper and和not怎么连用
时间: 2023-11-15 19:02:12 浏览: 39
QueryWrapper中的and和not可以通过链式调用来实现连用。例如,如果我们需要查询name中不含有fei字样且age大于18岁的员工信息,可以使用如下代码:
```
QueryWrapper<Employee> wrapper = new QueryWrapper<>();
wrapper.notLike("name", "fei").and(qw -> qw.gt("age", 18));
List<Employee> employees = employeeMapper.selectList(wrapper);```
其中,and方法接受一个Lambda表达式作为参数,Lambda表达式中可以继续使用QueryWrapper的其他方法来构建查询条件。这样就可以实现and和not的连用了。
相关问题
queryWrapper and和like 一起使用
在 MyBatis-Plus 中,可以使用 QueryWrapper 来构建查询条件,同时使用 like 进行模糊查询。
示例代码如下:
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.like("name", "J").and(qw -> qw.like("email", "@gmail.com"));
List<User> userList = userMapper.selectList(queryWrapper);
```
上述代码中,我们通过 QueryWrapper 的 like 方法来构建模糊查询条件。同时,在构建条件时,我们还可以使用 and 方法来组合多个查询条件。
在示例代码中,我们使用 and 方法来将两个查询条件组合在一起。其中,第一个查询条件是 name 字段中含有 "J" 的记录,第二个查询条件是 email 字段中含有 "@gmail.com" 的记录。
最终,我们调用 selectList 方法来执行查询操作,并将查询结果封装到 List<User> 对象中。
QueryWrapper 使用or 和and
QueryWrapper 是 MyBatis-Plus 中的一个查询构造器,可以方便地进行复杂的查询操作。在 QueryWrapper 中,可以使用 or 和 and 连接多个查询条件。
使用 or 连接多个查询条件:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", "张三").or().eq("name", "李四");
List<User> userList = userMapper.selectList(wrapper);
```
以上代码表示查询 name 为 "张三" 或者 name 为 "李四" 的用户列表。
使用 and 连接多个查询条件:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", "张三").and(qw -> qw.eq("age", 20).or().eq("age", 30));
List<User> userList = userMapper.selectList(wrapper);
```
以上代码表示查询 name 为 "张三" 并且 age 为 20 或者 age 为 30 的用户列表。