Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j 具有3个或更多节点的最短路径_Neo4j_Cypher - Fatal编程技术网

Neo4j 具有3个或更多节点的最短路径

Neo4j 具有3个或更多节点的最短路径,neo4j,cypher,Neo4j,Cypher,我正试图用Neo4J执行一个密码查询。 我已经在两个节点之间执行了最短路径,但我想知道是否可以使用更多节点执行 具有2个节点的Ex: MATCH (personA:Person { contactId: 1000073595058 }),(personB:Person { contactId: 1000295524418 }), p = shortestPath((personA)-[*..30]-(personB)) RETURN p 具有3个节点的Ex: MATCH (personA:P

我正试图用Neo4J执行一个密码查询。 我已经在两个节点之间执行了最短路径,但我想知道是否可以使用更多节点执行

具有2个节点的Ex:

MATCH (personA:Person { contactId: 1000073595058 }),(personB:Person { contactId: 1000295524418 }), p = shortestPath((personA)-[*..30]-(personB)) RETURN p 
具有3个节点的Ex:

MATCH (personA:Person { contactId: 1000073595058 }),(personB:Person { contactId: 1000295524418 }),(personC:Person { contactId: 1000331998948 }), p = shortestPath((personA)-[*..30]-(personB)-[*..30]-(personC)) RETURN p 

但当我执行时,返回一个异常。如何执行此操作?

您只能在两个节点之间
匹配
shotestPath
。您必须拆分查询:

MATCH (personA:Person { contactId: 1000073595058 }),
      (personB:Person { contactId: 1000295524418 }),
      (personC:Person { contactId: 1000331998948 })
WITH personA, personB, personC
MATCH p = shortestPath((personA)-[..30]-(personB)
MATCH p2 = shortestPath((personB)-[..30]-(personC)
RETURN p, p2
根据您希望对结果执行的操作,您可以使用聚合函数,例如从两条路径获取所有节点:

...
RETURN nodes(p)+nodes(p2)

能否添加引发的异常?最短路径(…)需要包含单个关系的模式(第1行第150列(偏移量:149))此查询有效!匹配(personA:Person{contactId:1000073595058}),(personB:Person{contactId:1000295524418}),(personC:Person{contactId:1000331998948})与personA,personB,personC匹配p=shortestPath((personA)-[…30]-(personB)匹配p2=shortestPath((personB)-[…30]-(personC)返回p,p2