LambdaQueryWrapper.eq() 未设置true,还是大小写不敏感查询
时间: 2023-10-13 13:19:46 浏览: 48
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.eq方法不为空取值
LambdaQueryWrapper.eq方法可以用于构建查询条件中的等值判断语句。当需要判断某个字段的值不为空时,可以使用.eq方法配合StringUtils.isNotEmpty方法来实现。
示例代码如下:
```java
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.commons.lang3.StringUtils;
public class Main {
public static void main(String[] args) {
String value = "some value";
LambdaQueryWrapper<Entity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(StringUtils.isNotEmpty(value), Entity::getField, value);
}
}
```
上述代码中,StringUtils.isNotEmpty方法用于判断value是否不为空,如果不为空,则.eq方法将字段与value进行等值判断。