Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.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/4/kotlin/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
Database 查找没有特定关系的节点(Cypher/neo4j)_Database_Neo4j_Cypher - Fatal编程技术网

Database 查找没有特定关系的节点(Cypher/neo4j)

Database 查找没有特定关系的节点(Cypher/neo4j),database,neo4j,cypher,Database,Neo4j,Cypher,我有一个neo4j db,具有以下功能: a:Foo b:Bar 大约10%的db具有(a)-[:has]->(b) 我只需要得到没有这种关系的节点 以前做()-[r?]-()会很完美!然而,它不再被支持:(相反,按照他们的建议去做) OPTIONAL MATCH (a:Foo)-[r:has]->(b:Bar) WHERE b is NULL RETURN a 给我一个空结果,因为可选匹配需要两个节点都在那里或两个节点都不在那里 那么如何获取所有未连接到b:Bar的a:Foo节点呢

我有一个neo4j db,具有以下功能:

a:Foo
b:Bar
大约10%的db具有
(a)-[:has]->(b)

我只需要得到没有这种关系的节点

以前做
()-[r?]-()
会很完美!然而,它不再被支持:(相反,按照他们的建议去做)

OPTIONAL MATCH (a:Foo)-[r:has]->(b:Bar) WHERE b is NULL RETURN a
给我一个空结果,因为可选匹配需要两个节点都在那里或两个节点都不在那里

那么如何获取所有未连接到
b:Bar
a:Foo
节点呢

注意:数据集有数百万个节点,因此查询需要高效,否则将超时。

这将是

MATCH (a:Foo) WHERE not ((a)-[:has]->(:Bar)) RETURN a;

如果您正在查找所有单身/孤儿,这也适用:

MATCH (a:Foo) WHERE not ((a)--()) RETURN a;

天哪…就是这样!我一直试图把标签放在比赛的右边。它没有任何性能问题吗?它似乎需要所有节点