mybatis-plus只查询部分字段
方法1
只需要查询出name和phone两个字段:使用querywrapper的select()方法指定要查询的字段
public void selectbywrapper1() {
querywrapper<user> querywrapper = new querywrapper<>();
querywrapper.select("name", "phone").eq("age",25);
list<user> users = usermapper.selectlist(querywrapper);
users.foreach(system.out::println);
}
这种方法会造成除“name”之外的字段的值为null
方法2
查询出除age和address外其它所有字段的数据:同样使用querywrapper的select()方法
public void selectbywrapper2() {
querywrapper<user> querywrapper = new querywrapper<>();
querywrapper.select(user.class, info -> !info.getcolumn().equals("age")
&& !info.getcolumn().equals("address")).eq("name","jack");
list<user> users = usermapper.selectlist(querywrapper);
users.foreach(system.out::println);
}
这种方法会造成除“age”"address"的字段的值为null
方法3
selectmaps
public void selectmaps2(){
querywrapper<user> userquerywrapper = wrappers.query();
userquerywrapper.select("avg(age) avg_age" , "min(age) min_age" , "max(age) max_age")
.groupby("age")
.having("sum(age) < {0}" , 60);
list<map<string , object>> maplist = usermapper.selectmaps(userquerywrapper);
maplist.foreach(system.out::println);
}
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论