如果我有 2 个顶点 V1 和 V2。哪种方法给了我这两个顶点的直接边数组黑白。
集合c
V1 = {"name": "a"}
V2 = {“名称”:“b”}
边 e
E1 = (V1, V2, {"计数": 1})
现在,我再次添加 V2(即它具有相同的 key )。首先,我想尽快拿到E1。理想情况下,我在想我们在 Arangodb 中是否有类似的东西
edgeList = db.e.edges(v1, v2);
它应该返回边数组 b/w v1 和 v2。
我正在寻找这个 db.e.edges 的最佳实践
再次添加 V2 后,E1 将如下所示:
E1 = (V1, V2, {"计数": 2})
最佳答案
您可以使用以下 AQL 方法来解决此问题:
GRAPH_SHORTEST_PATH
RETURN GRAPH_SHORTEST_PATH("yourGraph", "V1_ID", "V2_ID", {方向:"任意"})
这将返回这些边之间的最短路径,如果长度为 1,则 V1 和 V2 之间有直接边
- GRAPH_EDGES
RETURN GRAPH_EDGES("yourGraph", "V1_ID", {maxDepth : 1, 方向 : "any"})
这将返回 V1 最大深度为 1 的所有传入和传出边缘,只需过滤 V2 的结果
关于ArangoDB Quick api 用于了解 2 个文档键是否具有黑白边缘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26926678/