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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.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 匹配图的一条特定路径的密码查询_Neo4j_Cypher - Fatal编程技术网

Neo4j 匹配图的一条特定路径的密码查询

Neo4j 匹配图的一条特定路径的密码查询,neo4j,cypher,Neo4j,Cypher,我有一个图表如下。紫色节点(11376和11394)是我的根节点,即我的图形从那里开始 现在我想写一个密码查询,这样我就可以得到节点11376的完整路径,即从开始节点到结束节点(紫色到黄色)。同样,当我说节点11376时,我不应该得到其他节点11394。我该怎么做呢 我尝试了以下查询,但未获得所需的输出: match (hh{id:'11376'})-[*0..2]-(n) return n; 它还提供其他节点,即11394 以下是neo4j图: 因此,如果我为节点11376编写cyphe

我有一个图表如下。紫色节点(11376和11394)是我的根节点,即我的图形从那里开始

现在我想写一个密码查询,这样我就可以得到节点11376的完整路径,即从开始节点到结束节点(紫色到黄色)。同样,当我说节点11376时,我不应该得到其他节点11394。我该怎么做呢

我尝试了以下查询,但未获得所需的输出:

 match (hh{id:'11376'})-[*0..2]-(n) return n;
它还提供其他节点,即11394

以下是neo4j图:

因此,如果我为节点11376编写cypher匹配查询,我应该得到下面完整的路径,如下所示

我怎么做


谢谢

您知道将至少有3个跃点,因此您可以在查询中指定它:

MATCH p=(hh {id:11376})-[r*3]-(n)) RETURN p

顺便说一句,如果没有黄色节点的标签,您不能限制路径必须以黄色节点结尾,因此在上面的查询中,您可能会有一些额外的路径

通过使用黄色节点的标签类型,将查询写为:

match path = (hh{id:'11376'})-[*0..3]-(n:YELLOW_NODE_LABEL_TYPE_HERE)
return path;

这将返回从(节点{id:'11376'})到具有您分配给黄色节点的标签类型的任何节点的所有遍历3跳或更少跳的路径。通过第二个紫色节点的路径将不包括在结果中,因为通过两个紫色节点到达另一个黄色节点需要三个以上的跃点。

对于不同层次级别的节点,我有不同的标签名称。我还尝试使用u建议的查询,即,
Match m=(hh{id:11376})-[r*3](prop)返回m,但它也给出了其他根节点。但是,如果我在最后一个节点中指定特定的属性名,如下所示,它只给出该路径,不包括其他值。查询是
match p=(hh{id:11376})-->(prop{pname:11392})返回p;`。但是我想要根节点11376的所有节点和关系。@开尔文,非常感谢。你的建议真的帮了我很大的忙,并且能够看到想要的结果。