在的学习中,我们知道了spring data mongodb的基本用法,但是对于一些聚合操作,还是不熟悉的,所以本博客介绍一些常用的聚合函数
mongodb 中使用聚合(aggregations)来分析数据并从中获取有意义的信息。在这个过程,一个阶段的输出作为输入传递到下一个阶段
常用的聚合函数
使用阿里云提供的脚手架快速创建项目:
/d/file/titlepic/error.html style="text-align:center">
也可以在idea里,将这个链接复制到spring initializr这里,然后创建项目
jdk选择8的
选择spring data mongodb
private static final string databa = "test";private static final string collection = "ur";private static final string ur_json = "/urjson.txt";private static mongoclient mongoclient;private static mongodataba mongodataba;private static mongocollection<document> collection;@beforeclasspublic static void init() throws ioexception { mongoclient = new mongoclient("192.168.0.61", 27017); mongodataba = mongoclient.getdataba(databa); collection = mongodataba.getcollection(collection); collection.drop(); inputstream inputstream = mongodbaggregationtests.class.getresourceasstream(ur_json); bufferedreader reader = new bufferedreader(new inputstreamreader(inputstream)); reader.lines() .foreach(l->collection.inrtone(document.par(l))); reader.clo();}
本博客,不每一个函数都介绍,通过一些聚合函数配置使用的例子,加深读者的理解
统计用户名为ur1的用户数量
@test public void matchcounttest() { document first = collection.aggregate( arrays.aslist(match(filters.eq("name", "ur1")), count())) .first(); log.info("count:{}" , first.get("count")); asrtequals(1 , first.get("count")); }
skip跳过记录,只查看后面5条记录
@test public void skiptest() { aggregateiterable<document> iterable = collection.aggregate(arrays.aslist(skip(5)高中政治难吗)); for (document next : iterable) { log.info("ur:{}" ,next); } }
对用户名进行分组,避免重复,group
第一个参数$name
类似于group by name
,调用accumulators
的sum
函数,其实类似于sql,lect 四川高考分数线出炉name ,sum(1) as sumnum from
urgroup by name
@test public void grouptest() { 培根先生 aggregateiterable<document> iterable = collection.aggregate(arrays.aslist( group("$name" , accumulators.sum("sumnum" , 1)), sort(sorts.ascending("_id")) )); for (document next : iterable) { log.info("ur:{}" ,next); } }
mongodb 聚合 https://www.runoob.com/
mongodb南京农业大学排名 aggregations using java
饥饿的反义词到此这篇关于springboot系列之mongodbaggregations用法的文章就介绍到这了,更多相关springbootmongodbaggregations用法内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-04 23:21:04,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/bab7300cc95c7c083ebe9ab25996a5e3.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:SpringBoot系列之MongoDB Aggregations用法详解.doc
本文 PDF 下载地址:SpringBoot系列之MongoDB Aggregations用法详解.pdf
留言与评论(共有 0 条评论) |