0
我有一个复杂的查询,我正在尝试使用OPTIONAL MATCH
语句。它看起来像这样:Neo4j Cypher - 合并列并获得所有不同的值
MATCH (p:Person {name:'Victoria'})
OPTIONAL MATCH (p)-[:MANAGES]->(:Office)<-[MERGES_INTO*0..]-(:Office)<-[:WORKS_WITH]-(target1)
OPTIONAL MATCH (p)-[:SUPPORTS]->(:Office)<-[MERGES_INTO*0..]-(:Office)<-[:WORKS_WITH]-(target2)
OPTIONAL MATCH (p)-[:ASSISTS]->(:Person)-[*0..1]->(:Group)<--(target3)
OPTIONAL MATCH (p)-->(:Group)<--(target4)
RETURN DISTINCT target1,target2,target3,target4
我想要做的就是结果,如果他们叫target
而不是让target1
,target2
,target3
和target4
回到作为单独列一列。
有没有办法收集/展开四个潜在的目标列,将它们作为单列结果集返回?
我知道我可以使用返回值为target的四个独立查询的UNION
来获得期望的结果,但我想知道是否有更好的方法。
谢谢。
这正是我需要处理'collect'和'with'所需的例子。非常感谢。 –