在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
方法只對指定的字段進行去重操作,如果不指定字段,則默認對全部字段進行去重。