QueryWrapper有那些中立
时间: 2024-08-14 08:02:35 浏览: 50
在MyBatisPlus的QueryWrapper中,有一些常用的中立操作符,它们主要用于构建动态查询条件,而不会改变原有的查询结果集。这些中立操作符包括:
1. **and() / or()**: 这些方法用于添加额外的条件,并与其他条件组合,比如`new QueryWrapper().eq('field', value).and().gt('anotherField', anotherValue)`,表示同时满足两个字段的条件。
2. **ne() / eq() / gt() / ge() / lt() / le()**: 分别代表“不等于”、“等于”、“大于”、“大于等于”、“小于”和“小于等于”,它们都是返回一个新的QueryWrapper实例并添加条件。
3. **in() / notIn()**: 添加包含或排除特定值的范围查询,如`new QueryWrapper().in('field', Arrays.asList(values))`。
4. **between() / notBetween()**: 定义字段值在给定范围内的查询条件。
5. **like() / notLike()**: 匹配包含或不包含指定模式的字符串,可以配合通配符 `%` 和 `_` 使用。
6. **startWith() / endWith() / contain()**: 检查字符串是否以某个子串开始、结束或包含。
7. **not()**: 添加否定条件,如`new QueryWrapper().not().eq('field', value)`,表示该字段不等于指定值。
8. **allEq()**: 同时设置多个字段相等,如`new QueryWrapper().allEq(mapOfFields)`, 其中mapOfFields是一个键值对的Map。
9. **exists**: 判断是否存在符合条件的记录,常用于子查询。
这些操作符返回的是一个修改后的QueryWrapper,但并不会立即执行查询,直到调用`list()`、`count()`等方法才会触发实际的数据库查询。
阅读全文