querywrapper拼接复杂and和or条件
时间: 2024-09-03 09:04:05 浏览: 61
Java如何使用Query动态拼接SQL详解
QueryWrapper是MyBatis Plus中提供的一种便捷查询构建工具,它允许你在SQL语句中构造复杂的AND和OR逻辑关联条件,而无需手动编写完整的字符串拼接。例如,你可以像操作链式API一样添加多个条件:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
// 添加AND条件
wrapper.eq("username", "张三")
.ge("age", 18)
.in("status", Arrays.asList(0, 1)); // 等于0或1的状态
// 添加OR条件
wrapper.or().eq("email", "zhangsan@example.com").or().like("phone", "%139%"); // 手机号包含139
List<User> users = userMapper.selectList(wrapper);
```
在这个例子中,`QueryWrapper`会自动处理括号的嵌套,确保了条件组合的正确性。如果你想更细致地控制条件之间的逻辑,可以继续添加`wrapper.and()`或`wrapper.or()`。最后,通过`selectList`或其他对应的方法执行查询。
阅读全文