在MyBatis Plus中,可以使用distinct
方法來實(shí)現(xiàn)去重的功能。distinct
方法可以用于QueryWrapper
或LambdaQueryWrapper
對(duì)象上。
使用示例:
// 使用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)
方法表示對(duì)查詢結(jié)果進(jìn)行去重操作,只返回不重復(fù)的記錄。在select
方法中指定需要查詢的字段,然后使用eq
方法添加查詢條件。
注意:distinct
方法只對(duì)指定的字段進(jìn)行去重操作,如果不指定字段,則默認(rèn)對(duì)全部字段進(jìn)行去重。