mybatis-plus使用sum,count,distinct等函数的方法
通过mybatis-plus实现以下sql查询
SELECT COUNT(DISTINCT user_name)
FROM user_info
WHERE is_deleted=0 AND is_enabled = 1
mybatis-plus实现
int count = this.count(Wrappers.User>query()
.select("DISTINCT user_name")
.lambda()
.eq(User::getIsEnabled, 1));
//或者
int count1 = this.count(Wrappers.User>query()
.select("DISTINCT user_name")
.eq("is_enabled", 1));
QueryWrapperUser> wrapper1 = new QueryWrapper>();
wrapper1.select("distinct user_id,user_name ")
.in("user_id","1,2,3");
ListUser> list1 = this.list(wrapper1);
QueryWrapperUser> wrapper1 = new QueryWrapper>();
wrapper1.select("count(user_id) as userids",
"sum(age) as ages")
.in("user_id","1,2,3");
MapString, Object> map = this.getMap(wrapper1);
map.get("userids");
//也可以将map转换为实体类,只不过字段需要对应
JSON.parseObject(JSON.toJSONString(map), ScoreData.class);