QueryWrapper likeRight 怎么才不区分大小写
时间: 2023-10-14 15:04:14 浏览: 145
在 MyBatis Plus 的 QueryWrapper 中,`likeRight` 方法用于构建右模糊查询条件。实现不区分大小写的右模糊查询,可以使用数据库的函数或关键字,例如 MySQL 中的 `COLLATE` 关键字。
以下是一个示例代码,演示如何在 QueryWrapper 中进行不区分大小写的右模糊查询:
```java
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.enums.SqlLike;
// 创建 QueryWrapper 对象
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
// 使用 likeRight 方法设置右模糊查询条件,并指定 COLLATE 关键字
queryWrapper.likeRight("username", "abc", SqlLike.DEFAULT).last("COLLATE utf8_general_ci");
// 执行查询操作
List<User> userList = userDao.selectList(queryWrapper);
```
在上面的示例中,我们通过 `likeRight` 方法设置了一个右模糊查询条件,即查询 `username` 字段以 "abc" 结尾的记录。为了实现不区分大小写,我们使用 `last` 方法添加了一个原生 SQL 片段 `COLLATE utf8_general_ci`,它会告诉数据库在比较时不区分大小写。
请注意,上述代码中的 `User` 类是你自己定义的实体类,根据你的实际情况进行相应的替换。
通过使用 `QueryWrapper` 类的不同方法和传递适当的参数,可以实现更多灵活的查询条件。
阅读全文