在MyBatis Plus中,可以使用distinct
方法来实现去重的功能。distinct
方法可以用于QueryWrapper
或LambdaQueryWrapper
对象上。
使用示例:
// 使用QueryWrapper的distinct方法
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.select("id", "name").distinct(true).eq("age", 18);
List<User> userList = userMapper.selectList(queryWrapper);
// 使用LambdaQueryWrapper的distinct方法
LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.select(User::getId, User::getName).distinct(true).eq(User::getAge, 18);
List<User> userList = userMapper.selectList(lambdaQueryWrapper);
上述示例中,distinct(true)
方法表示对查询结果进行去重操作,只返回不重复的记录。在select
方法中指定需要查询的字段,然后使用eq
方法添加查询条件。
注意:distinct
方法只对指定的字段进行去重操作,如果不指定字段,则默认对全部字段进行去重。