查询投影
- LambdaQueryWapper查询结果包含模型类中部分属性
//无条件查询全部
LambdaQueryWapper<User> lqw = new LambdaQueryWapper<User>();
List<User> userList = userDao.select(lqw);
System.out.println(userList);
//只显示某些字段不显示全部
LambdaQueryWapper<User> lqw = new LambdaQueryWapper<User>();
//Lambda中特有的
lqw.select(User::getId,User::getName);
List<User> userList = userDao.select(lqw);
System.out.println(userList);
- QueryWapper查询结果包含模型类中未定义的属性
//如果不用Lambda,直接引号字段
QueryWapper<User> lqw = new QueryWapper<User>();
lqw.select("id","name","age");
List<User> userList = userDao.select(lqw);
System.out.println(userList);
//统计共有几条数据【重要】,可以起别名
QueryWapper<User> lqw = new QueryWapper<User>();
lqw.select(“count(*) as count”);
List<Map<String,Object>> userList = userDao.selectMaps(lqw);
System.out.println(userList);
//分组,按照性别分组。统计男生女生有几人
QueryWapper<User> lqw = new QueryWapper<User>();
lqw.select(“count(*) as count, sex”);
lqw.groupBy("sex"); //分组
List<Map<String,Object>> userList = userDao.selectMaps(lqw);
System.out.println(userList);
上面两种方式sql是继承BaseMapper自己生成的。
- 还有一些sql这两种方式无法使用,则在接口dao层@select(" ")中自己写sql语句。