gpt4 book ai didi

graph - 如何在 Gremlin 中找到两个顶点之间的边 ID

转载 作者:行者123 更新时间:2023-12-02 06:48:40 26 4
gpt4 key购买 nike

假设我们有一个图 g 有很多顶点,我们需要找到顶点 v1 和顶点 v2 之间的边和边 ID ID id1id2

最佳答案

对此的遍历只是:

g.V(id1).bothE().where(otherV().hasId(id2))

我使用 bothE() 因为你没有说边缘是否会从 v1v2 或反之亦然。当您已经知道方向时,您应该使用 outE()inE()。除此之外,当您知道边标签时,您应该将其提供给此步骤以减少要遍历的边数。

对于 TinkerPop 的现代图,如下所示:

gremlin> graph = TinkerFactory.createModern()
==>tinkergraph[vertices:6 edges:6]
gremlin> g = graph.traversal()
==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
gremlin> g.V().valueMap(true)
==>[name:[marko],label:person,id:1,age:[29]]
==>[name:[vadas],label:person,id:2,age:[27]]
==>[name:[lop],label:software,id:3,lang:[java]]
==>[name:[josh],label:person,id:4,age:[32]]
==>[name:[ripple],label:software,id:5,lang:[java]]
==>[name:[peter],label:person,id:6,age:[35]]
gremlin> g.V(1).bothE().where(otherV().hasId(2)).id()
==>7

并使用明确的方向和边缘标签进行优化:

gremlin> g.V(1).outE('knows').where(inV().hasId(2)).id()
==>7

关于graph - 如何在 Gremlin 中找到两个顶点之间的边 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50597323/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com