LambdaQueryWrapper.eq() 未设置true,还是大小写不敏感查询
时间: 2023-10-13 14:19:46 浏览: 107
LambdaQueryWrapper.eq() 默认是大小写不敏感查询,如果需要设置为大小写敏感查询,需要在调用eq()方法前设置为true,例如:
```
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
wrapper.setCaseSensitive(true); // 设置为大小写敏感查询
wrapper.eq(User::getName, "Tom");
List<User> userList = userMapper.selectList(wrapper);
```
这样就可以实现大小写敏感的查询了。
相关问题
LambdaQueryWrapper.eq()区分大小写查询
LambdaQueryWrapper.eq()方法在默认情况下是区分大小写的。如果要进行大小写不敏感的查询,可以使用LambdaQueryWrapper.eq(true, "column_name", value)方法,其中第一个参数为true表示开启大小写不敏感查询。例如:
```
// 区分大小写查询
LambdaQueryWrapper<User> wrapper1 = new LambdaQueryWrapper<>();
wrapper1.eq("name", "Tom");
// 大小写不敏感查询
LambdaQueryWrapper<User> wrapper2 = new LambdaQueryWrapper<>();
wrapper2.eq(true, "name", "tom");
```
在这个例子中,wrapper1会查询name为"Tom"的记录,而wrapper2会查询name为"tom"或"Tom"的记录。
lambdaQueryWrapper.ge和lambdaQueryWrapper.eq
在MyBatis Plus中,`lambdaQueryWrapper.ge()` 和 `lambdaQueryWrapper.eq()` 是两个常用的动态查询方法,用于构建SQL查询语句。它们分别对应SQL中的 ">= (大于等于)" 和 "=" 操作符。
- `lambdaQueryWrapper.ge(field, value)`:这个方法用于在查询条件中设置某个字段(field)的值应大于等于指定的value。例如,如果你有一个用户表,你想查询所有年龄大于等于18岁的用户,你可以这样写:`UserMapper::selectList .eq(User::age, 18);`
- `lambdaQueryWrapper.eq(field, value)`:这个方法则是将字段值设置为精确匹配,即查询结果中字段的值等于给定的value。同样,比如查询所有年龄为18岁的用户,你会用到它:`UserMapper::selectList .eq(User::age, 18)`;
这两个方法结合使用可以让你方便地构造复杂的查询条件,无需手动拼接SQL字符串,提高了代码的可读性和维护性。当你需要根据业务逻辑动态调整查询条件时,使用这种方式非常有效。
阅读全文