在Gremlin中,如何查询一个属性上具有相同值的两个或多个顶点?

在Gremlin中,如何查询一个属性上具有相同值的两个或多个顶点?,gremlin,tinkerpop3,Gremlin,Tinkerpop3,我想找到两个或多个具有相同属性的顶点。例如,找到两个同名的人。 我尝试了以下方法: graph.traversal().V().hasLabel("Person").as("a").where("a", P.eq("a")).by("name").where("a", P.neq("a")).by("vid").toList() 但是结果是空的(我很确定图中有限定的顶点) 任何帮助都将不胜感激。谢谢。您必须扫描顶点两次。在当前遍历中,仅将每个顶点与其自身进行比较 g.V().hasLabel(

我想找到两个或多个具有相同属性的顶点。例如,找到两个同名的人。 我尝试了以下方法:

graph.traversal().V().hasLabel("Person").as("a").where("a", P.eq("a")).by("name").where("a", P.neq("a")).by("vid").toList()
但是结果是空的(我很确定图中有限定的顶点)
任何帮助都将不胜感激。谢谢。

您必须扫描顶点两次。在当前遍历中,仅将每个顶点与其自身进行比较

g.V().hasLabel("Person").as("a").
  V().hasLabel("Person").as("b").
  where("a", P.eq("b")).by("name").
  where("a", P.neq("b"))