Java代码实现Mongo数据聚合查询
首先引入mongo依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
- 俩张mongo数据库表进行联查
// java实现'from'后面是副表名,‘localField’:主表关联字段,‘foreignField’:副表关联字段,‘as’:关联表的命名,score1相当于临时集合存储数据
LookupOperation lookupOperation = LookupOperation.newLookup().from("test_study_log").
localField("userId").foreignField("userId").as("score1");
//上面的关联查询只是两张表进行关联,如果想要一对多,就再创建一个LookupOperation对象,将对象添加到List集合中即可实现。
// 拼装具体查询信息
Criteria docCri = Criteria.where("score1").not().size(0);
docCri.and("totalLength").is(100);//条件1
docCri.and("videoName").is("测试课程");//条件2
AggregationOperation match = Aggregation.match(docCri);
// 把条件封装成List
List operations = new A