Graph 如何在没有启动节点的情况下获取ArangoDB中的所有图形节点

Graph 如何在没有启动节点的情况下获取ArangoDB中的所有图形节点,graph,orientdb,graph-databases,arangodb,aql,Graph,Orientdb,Graph Databases,Arangodb,Aql,与OrientDB中一样,对于获取所有图形,请仅使用“从v中选择” 到目前为止,我已经在ArangoDB中使用了AQL和start节点: for v,e,p IN 2 ANY 'user/188802' graph 'a' return p 现在我想在ArangoDB中获得所有图形节点,而不使用起始节点?图形是一组边集合。每个边缘集合引用文档集合中存储的文档中的和 图形遍历查询期望您有一个起始位置,并返回该起始位置的结果 可以确定所有可能的起始位置,然后在这些位置上运行图遍历 您需要知道组成

与OrientDB中一样,对于获取所有图形,请仅使用“从v中选择”

到目前为止,我已经在ArangoDB中使用了AQL和start节点:

for v,e,p IN 2 ANY 'user/188802' graph 'a' return p

现在我想在ArangoDB中获得所有图形节点,而不使用起始节点?

图形是一组边集合。每个边缘集合引用文档集合中存储的文档中的和

图形遍历查询期望您有一个起始位置,并返回该起始位置的结果

可以确定所有可能的起始位置,然后在这些位置上运行图遍历

您需要知道组成图形的文档集合的名称,您可以将它们插入AQL查询,如下所示:

FOR vertex IN UNION(
        (FOR v IN document_collection_1 RETURN v._id),
        (FOR v IN document_collection_2 RETURN v._id),
        (FOR v IN document_collection_3 RETURN v._id)
    )
    FOR v, e IN 1..5 OUTBOUND vertex GRAPH 'my_graph_name' OPTIONS { uniqueVertices: true }
    RETURN DISTINCT [
        { 
            _from: e._from,
            _to: e._to
        }
    ]
请记住,在ArangoDB中,文档集合可以绑定到多个图形,因此您需要确保标识作为图形一部分的所有文档集合


然后,此查询将提取包含图中定义的所有链接的对象数组。此查询仅关注具有作为图形一部分的边的顶点。如果顶点上没有边,它将不会出现在输出中,因为它不是图形的一部分。

图形是一组边集合。每个边缘集合引用文档集合中存储的文档中的和

图形遍历查询期望您有一个起始位置,并返回该起始位置的结果

可以确定所有可能的起始位置,然后在这些位置上运行图遍历

您需要知道组成图形的文档集合的名称,您可以将它们插入AQL查询,如下所示:

FOR vertex IN UNION(
        (FOR v IN document_collection_1 RETURN v._id),
        (FOR v IN document_collection_2 RETURN v._id),
        (FOR v IN document_collection_3 RETURN v._id)
    )
    FOR v, e IN 1..5 OUTBOUND vertex GRAPH 'my_graph_name' OPTIONS { uniqueVertices: true }
    RETURN DISTINCT [
        { 
            _from: e._from,
            _to: e._to
        }
    ]
请记住,在ArangoDB中,文档集合可以绑定到多个图形,因此您需要确保标识作为图形一部分的所有文档集合

然后,此查询将提取包含图中定义的所有链接的对象数组。此查询仅关注具有作为图形一部分的边的顶点。如果顶点上没有边,它将不会显示在输出中,因为它不是图形的一部分