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 通过WITH来自上一个查询的结果将变量传递到START子句_Neo4j_Cypher - Fatal编程技术网

Neo4j 通过WITH来自上一个查询的结果将变量传递到START子句

Neo4j 通过WITH来自上一个查询的结果将变量传递到START子句,neo4j,cypher,Neo4j,Cypher,我有一个带有“超边”的图结构,边属性具有图中某个节点的唯一属性。我想编写一个Cypher查询来查找这些边,然后使用该属性的值和后续的START子句来查找引用的节点。我尝试了一些方法,但最接近的方法是: MATCH (start)-[relationship]->(end) WHERE HAS(relationship.source) WITH start, end, relationship.source AS source START src = node:node_auto_index

我有一个带有“超边”的图结构,边属性具有图中某个节点的唯一属性。我想编写一个Cypher查询来查找这些边,然后使用该属性的值和后续的
START
子句来查找引用的节点。我尝试了一些方法,但最接近的方法是:

MATCH (start)-[relationship]->(end)
WHERE HAS(relationship.source)
WITH start, end, relationship.source AS source
START src = node:node_auto_index(src = {source})
RETURN start, end, src
它抱怨
需要一个名为source
的参数

{source}
中删除括号也会产生错误:

START src = node:node_auto_index(src = source)
我可以在后续查询中将该值传递给
WHERE
子句,如下所示:

MATCH (start)-[relationship]->(end)
WHERE HAS(relationship.source)
WITH start, end, relationship.source AS source
MATCH (src)
WHERE src.src = source
RETURN start, end, src
但这并没有利用遗留索引,导致查询速度非常慢


有没有办法通过
WITH
将先前查询的结果传递给
START
子句?

+1是一个好问题!我希望我能得到答案,但我希望最终的答案是,“这不重要,因为我们将使
MATCH
能够在未来的版本中利用遗留索引,所以您一开始就不会使用
START
。”我知道这对您今天没有帮助。