querywrapper的所有方法不等于
时间: 2025-03-26 15:28:40 浏览: 31
在 MyBatis Plus 中,`QueryWrapper<T>` 是一个用于构建查询条件的强大工具类。当你要表示“不等于”的条件时,可以使用 `ne` 方法。“所有方法不等于”这个表述可能存在一些歧义,我猜测您想了解的是如何设置字段值为 "不等于" 的查询条件。
下面我会详细解释一下如何通过 `QueryWrapper` 实现这一操作:
### 使用 ne() 方法
`ne()` 方法代表 Not Equal,即 “不等于”。其基本语法结构如下:
```java
// 字段名、待比较的值
queryWrapper.ne("column_name", value);
```
例如我们有一个名为 User 的实体对象以及对应的表 users,并希望找出年龄不是 20 岁的所有用户,则可以在 DAO 层编写类似如下的代码片段:
```java
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
...
public List<User> selectUsersNotEqualAge(){
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
// 设置 age != 20 这样的过滤规则
queryWrapper.ne("age", 20);
return userMapper.selectList(queryWrapper);
}
```
此外还支持链式调用,允许同时添加多个筛选条件。
如果您需要对同一个属性应用更复杂的判断逻辑 (比如排除几个特定数值),那么还可以借助自定义 SQL 表达式的功能来完成任务。
对于这种情况您可以尝试采用 notIn 或者 in 搭配集合的方式处理:
```java
ArrayList<Integer> excludedAges = Arrays.asList(20,30,45);
queryWrapper.notIn("age",excludedAges );
```
这将会生成类似于 WHERE age NOT IN (20, 30, 45) 的SQL语句.
最后请注意,在实际项目里一定要确保传入参数的有效性和合法性检查工作已经做好了!
阅读全文
相关推荐


















