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

时间:2019-10-14 07:59:18

标签: gremlin tinkerpop3

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

graph.traversal().V().hasLabel("Person").as("a").where("a", P.eq("a")).by("name").where("a", P.neq("a")).by("vid").toList()

,但结果为null(我很确定图中有合格的顶点。) enter image description here 任何帮助将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:1)

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

def get_cmd_output(output):
  regex = r"'__SEPARATOR__'.*?'__SEPARATOR__'((.|\r|\n|\r\n|\n\r)*)__SEPARATOR__"
  output = re.search(regex, output).group(1)
  return output