对查询数据进行分组计数-groupby原创
12人赞赏了该文章
3,900次浏览
编辑于2021年05月18日 11:46:54
场景:对单据的数据按照创建人或者某用户字段进行分组,并统计每个人有几条单据数据
实现:利用苍穹的algo框架,dataSet接口groupby实现
代码:
//利用帮助类查询数据集 DataSet dataSet = QueryServiceHelper.queryDataSet("algoKey", "demobill", "id,userfield.name", null, null); //对结果dataSet进行按照用户名字分组处理 GroupbyDataSet groupby = dataSet.groupBy(new String[]{"userfield.name"}); //对分组结果计数并命名别名count groupby = groupby.count("count"); //调用finish得到最终结果集 DataSet dataSet2 = groupby.finish(); //对dataSet遍历得到数据 for (Row row : dataSet2) { row.getInteger("count");//每个人的数据数量 row.getString("userfield.name");//人员名字 }
对遍历的结果使用list或者map进行记录用来做后续操作,记得close叶子节点,还有就是dataset不能做缓存,利用遍历循环取出,new对象存储记录
如果对您有帮助请点赞哟~【emoji】
赞 12
12人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读