我使用图形常见邻居,但我只需要返回结果顶点,不需要花哨
[
{collection/1:{
collection/2:[
{_id:3 ...},
{_id:7 ...}
]
}
]
我只需要返回部分_id:3和_id:7:
[
{_id:3 ...},
{_id:7 ...}
]
现在我试图弄清楚如何评价这一点,因为它不是列表我不能轻易实现它。是否有一些隐藏的功能或钩子只返回结果顶点?或者我应该使用两个GRAPH_NEIGHBORS查询手动执行此操作,因为我相信它通常会做什么,并使用第一个查询限制第二个查询?
答案 0 :(得分:1)
确定最终查询以我想要的格式返回结果:
FOR entry
IN GRAPH_COMMON_NEIGHBORS('nodes', "node/137789480179", "node/137987398899", {direction: 'outbound'}, {direction: 'outbound'})
FOR a in ATTRIBUTES(entry) FOR b in ATTRIBUTES(entry[a]) RETURN entry[a][b]
它返回我想要的结果,虽然它仍然可能需要一些改进,比如按字母顺序按标题排序结果...我已经尝试过但它不起作用。
答案 1 :(得分:0)
结果结构的原因是您可以使用示例而不是单个顶点来调用它。在你的情况下,当然很明显邻居属于哪个顶点对。 要对结果进行排序,您可以执行以下操作:
FOR entry IN GRAPH_COMMON_NEIGHBORS("nodes", "node/137789480179", "node/137987398899", {maxDepth : 2}, {maxDepth : 2}) LET X = entry["node/137789480179"]["node/137987398899"] FOR v IN X SORT v.name DESC RETURN v