mybatis-plus只查询部分字段的两种方法
mybatis-plus(后面简称为mp)是mybatis的增强版,官方称之为 “ 只做增强,不做修改 ”。mp将一些简单的sql语句进行了封装和自动生成,提高了效率,但是降低了性能。
那么,用mybatis可以自己写sql,查询语句可以自由发挥,比如可以只查询表中的部分字段,对于mp也有两种针对此种需求的方法,下面就来介绍:
方法1:只需要查询出name和phone两个字段:使用queryWrapper的select()方法指定要查询的字段
@RequestMapping("/selectByWrapper1") public ListselectByWrapper1(){ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("username");//指定查询某字段 List sysUsers=sysUserService.list(queryWrapper); return sysUsers; }
方法2:查询出除age和address外其它所有字段的数据:同样使用queryWrapper的select()方法
@RequestMapping("/selectByWrapper2") public ListselectByWrapper2(){ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select(SysUser.class, info ->!info.getColumn().equals("id") && !info.getColumn().equals("email"));//查询指定某字段以外的数据 List sysUsers=sysUserService.list(queryWrapper); return sysUsers; }