neo4j cypher查询过滤器特定关系

时间:2012-10-10 07:21:33

标签: neo4j cypher

我是Neo4j的新手,我会感激一些帮助...... 我有以下简单图http://console.neo4j.org/?id=colc1f

基本上我想检索特定节点的关系,例如节点ID:1
想象一下,除了FOLLOW,FRIEND还有更多的关系类型,但唯一的例外是FRIEND关系,因为我只关心传入上下文节点(1)的FRIEND关系,我想在一个查询中检索所有关系。

所以基本的 cypher 查询是:

start profile=node(1) 
match profile-[r:FRIEND|FOLLOW|..]-other 
return type(r),other

但是如何过滤从同一查询中的上下文配置文件中传出的FRIEND关系?

感谢。

1 个答案:

答案 0 :(得分:3)

您可以将额外的验证放入where,并执行以下操作:

 start profile=node(1) 
 match profile-[r:FRIEND|FOLLOW]-other 
 where profile-[:FRIEND]->other 
    or type(r) <> "FRIEND" 
return type(r),other

http://console.neo4j.org/r/dgas8o