在单表查询中,可以使用 and
或 or
方法来构造多个查询条件的组合,从而实现多字段匹配的功能。
下面是一个示例代码,演示了如何使用 LambdaQueryWrapper 实现 user 表的关联查询,并且限制 name 或 email 包含 “张三” 并且 age 等于 18:
// 创建 LambdaQueryWrapper 对象
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
// 使用 and 方法将两个 like 查询条件进行组合,并使用 or 方法实现 "或" 的关系
wrapper.and(w -> w.like(User::getName, "张三")
.or()
.like(User::getEmail, "张三"))
.eq(User::getAge, 18);
// 执行查询操作
List<User> userList = userMapper.selectList(wrapper);
在上述代码中,我们首先创建了一个 LambdaQueryWrapper 对象,然后使用 and
方法将两个 like 查询条件进行组合,并使用 or
方法实现 “或” 的关系。最后使用 eq
方法匹配 age 等于 18 的记录。最终执行查询操作并返回符合条件的结果。
需要注意的是,在进行多字段匹配时,需要使用正确的逻辑运算符将不同的查询条件进行组合,以达到预期的查询效果。在本例中,我们使用 and
方法连接两个 like 查询条件,并使用 or
方法实现 “或” 的关系。
文章评论