当我在理解列表中使用可变长度时,它工作正常,但是一旦我添加了where子句,我就会得到类型不匹配错误,该错误期望映射但得到list(relationship)。当我执行可变长度时,起始变量将成为关系列表,而不只是一个关系。
这很好:
return Content: [(n)-[:REL*..6]->(m) | m.ID]
但这会返回错误:
return Content: [(n)-[rel:REL*..6]->(m) WHERE rel.boolean | m.ID]
尝试过:
return Content: [(n)-[rel:REL*..6]->(m) WHERE rel.boolean | ms: collect(m.ID)]
return Content: [(n)-[rel:REL*..6]->(m) WHERE rel.boolean | collect(m.ID) as ms]
return Content: [path IN (n)-[:REL*..6]->() WHERE relationships(path).boolean | nodes(path).ID]
我试图在每个路径上的所有关系上应用布尔条件(布尔存在并且为true),并返回所有路径上所有节点的ID。