mybatisplus or
时间: 2023-08-27 10:15:11 浏览: 97
MybatisPlus使用实战,MybatisPlus简介和使用示例
MybatisPlus中的or操作可以通过使用QueryWrapper的or方法来实现。在QueryWrapper中,我们可以使用lambda表达式来定义or条件。例如,使用lambda表达式可以将查询条件设置为"pwd = ? or phone = ?"。具体的示例代码如下所示:
```
userWrapper.lambda.and(tmp->tmp.eq("pwd", pwd).or().eq("phone", phone));
```
这段代码将生成以下SQL语句:
```
select * from user where name = ? and (pwd = ? or phone = ?)
```
使用这种方式,你可以在MybatisPlus中轻松实现or操作。请注意,在拼接复杂SQL语句时,直接拼接可能会导致优先级错误。因此,建议使用or(Consumer consumer)和and(Consumer consumer)这两个方法来处理有优先级的复杂连接。例如:
```
QueryWrapper<AttrEntity> queryWrapper = new QueryWrapper<AttrEntity>().eq("attr_type", "base".equalsIgnoreCase(type) ? 1 : 0);
queryWrapper.and(qr -> qr.eq("attr_id", key).or().like("attr_name", key));
queryWrapper.and(qr -> qr.eq("catelog_id", catelogId));
```
这段代码将生成一个复杂的查询条件,并确保了正确的优先级。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [MybatisPlus中and和or的使用](https://blog.csdn.net/qq_37171353/article/details/116568211)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [Mybatis-Plus使用或“or”问题,及使用方法](https://blog.csdn.net/Ying_ph/article/details/126262500)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [Mybatis-Plus中的and()和or()的使用与原理介绍](https://blog.csdn.net/qq_43318840/article/details/125704216)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
阅读全文