比如根据name查询当前人是否在数据库中有记录:
QueryWrapper<AdminEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name",name);
int count = adminMapper.selectCount(queryWrapper);
貌似没问题。但是假如数据库中有很多记录,他会将所有记录扫一遍才返回。
优化:
QueryWrapper<AdminEntity> queryWrapper = new QueryWrapper<>();
queryWrapper
.select("SELECT 1")
.eq("name",name)
.last("LIMIT 1");
int count = adminMapper.selectCount(queryWrapper);
这样的写法的好处是遇到满足条件的数据就返回,不再扫描。