【发布时间】:2018-02-25 09:14:25
【问题描述】:
在回答之前的questions 时,展示了如何在其集合名称下收集文档,但有一个明确的限制,即查询只为每个集合返回一个文档。
@CoDEmanX 询问如果查询返回同一集合的多个文档怎么办?
【问题讨论】:
在回答之前的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 }
【讨论】:
"collection": PARSE_IDENTIFIER(v).collection 和RETURN { [collection]: groups[*].i.item }?对我来说似乎没有必要为集合名称创建一个数组,只是为了从中获取唯一的元素。