首页 > 解决方案 > Neo4J cypher:收集中间节点属性(路径)

问题描述

我在Neo4J中有一个数据沿袭相关图,其中包含中间节点(表)的可变长度路径:

match p=(s)-[r:airflow_loads_to*]->(t)
where s.database_name='hive'
and s.schema_name='test'
and s.name="source_table"
return s.name,collect(nodes(p)),t.name

我不想返回 s.name 和 t.name 之间的节点作为路径,而是返回路径中所有节点的name属性的数组(按遍历顺序)

可能必须使用收集,但这在路径上是不可能的......

标签: neo4jcypher

解决方案


将最后一行更改为

return s.name, [n in nodes(p) | n.name] as arrayOfName, t.name

应该做的伎俩


推荐阅读