获取scala gremlin中两个顶点之间的传出边属性值

获取scala gremlin中两个顶点之间的传出边属性值,scala,graph-databases,titan,gremlin,gremlin-server,Scala,Graph Databases,Titan,Gremlin,Gremlin Server,我正在尝试获取两个顶点之间的边属性值。例如A-->B A和B是两个顶点,其边具有属性(名称) 我的代码如下所示: graph.V().hasLabel(A).outE().value("name").headOption() 它给我name的属性值 在给定的两个顶点中,我没有得到任何输出 graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption() “测试””

我正在尝试获取两个顶点之间的边属性值。例如A-->B A和B是两个顶点,其边具有属性(名称)

我的代码如下所示:

graph.V().hasLabel(A).outE().value("name").headOption()
它给我name的属性值

在给定的两个顶点中,我没有得到任何输出

graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption()
测试””-边缘标签 “名称””-边缘属性


你知道我的问题出了什么问题吗。

很抱歉在你对上一个问题的评论中没有回答这个问题。我想你要找的是:

graph.traversal().V()
     .hasLabel("A").outE("test").as("x").otherV()
     .hasLabel("B").select("x").properties("name");
如果只需要边上特性的值,可以执行以下操作:

graph.traversal().V()
     .hasLabel("A").outE("test").as("x").otherV()
     .hasLabel("B").select("x").values("name");
旁注(为什么原始遍历错误):原始遍历:

graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption()
正在执行以下操作:

graph.traversal().V()
     .hasLabel("A").outE("test").as("x").otherV()
     .hasLabel("B").select("x").values("name");
  • 使用标签“A”获取所有顶点

  • 从这些顶点沿着标签为“test”的向外的边到标签为“B”的顶点

  • 然后从这些顶点获取属性
    “name”

  • 您实际上是在询问顶点上的属性