在回答之前的questions时,展示了如何在其集合名称下收集文档,但有一个明确的约束,即查询只返回每个集合的一个文档。
@CoDEmanX问如果查询返回同一集合的许多文档怎么办?
将不得不返工查询以使用聚合:
FOR doc IN ANY "vertex/key" edge_collection
COLLECT collection = PARSE_IDENTIFIER(doc).collection INTO collected
RETURN MERGE({
[collection]: collected[*].doc
})
COLLECT collection = PARSE_IDENTIFIER(doc).collection INTO collected
分组文档{ [collection]: collected[*].doc }
的已收集文档数组