1

我正在尝试学习使用restHeart rest api,看看我是否可以避免任何自定义代码来编写任何java代码来查询MongoDB。

我正在尝试执行以下 mongoshell 查询,知道如何在 RestHeart 请求中编写它吗?

db.getCollection('InsStatData').aggregate({'$match':{'$and':[{ 'sectionName': 'ASSETS'},{'year':2015},{ 'sections.data.rowIdx': 1},{'sections.data.values.colIdx':2}]}},
 { '$unwind': '$sections' },
 { '$unwind': '$sections.data' },
 { '$unwind': '$sections.data.values' },
 {'$match':{'$and':[{ 'sectionName': 'ASSETS'},{'year':2015},{ 
 'sections.data.rowIdx': 1},{'sections.data.values.colIdx':2}]}}
 )

InsStatData 是 collecitonName。

4

1 回答 1

1

是的 RESTHeart 支持聚合。

基本上,您可以定义一个聚合,在 /db/coll/_aggrs 资源下创建一个包含聚合管道的文档。

聚合文档具有uri属性,使其在 /db/coll/_aggrs/ uri中可用

聚合也可以在其中包含变量,{"$var": "n"}并且可以按如下方式传递变量

GET /db/coll/_aggrs/<uri>=avars={"n": { <any json> }}

有关更多信息,请参阅此文档页面https://softinstigate.atlassian.net/wiki/x/AwDw

于 2017-05-19T07:37:46.093 回答