密码查询得到错误的结果

时间:2015-07-01 18:16:46

标签: neo4j cypher

我有一个图表,其中包含3种类型的节点:帖子,用户,猫,每只猫都有很多帖子与一个' next'关系,每个用户都可以评论这些帖子,评论是评论'与内容的关系'并且' id'属性。
我想得到一些猫的帖子以及与每个帖子相关的所有评论。
我已经尝试了这个,但它没有给我发帖而没有评论:

MATCH (cat:Cat {id:1})-[:lastPost]->(last)-[:next*0..]->(rest)
MATCH (rest)<-[c:Commented]-(u:User)
RETURN c, rest

有没有办法在Cypher实现我的目标?谢谢

1 个答案:

答案 0 :(得分:2)

尝试将第二个MATCH语句更改为OPTIONAL MATCH

MATCH (cat:Cat {id:1})-[:lastPost]->(last)-[:next*0..]->(rest)
OPTIONAL MATCH (rest)<-[c:Commented]-(u:User)
RETURN c, rest

OPTIONAL MATCH模式不匹配的任何值都为NULL