2014-10-20 59 views
4

一直在玩密码一段时间了,并且有点理解某些东西有点困难。匹配OR条件

假设我有个人节点其中一些可能有belongs_to的关系 这将是最好的方式找到,要么

  • 有blongs_to关系,但确实有一个电子邮件地址的节点“[email protected]
  • 并有一个ID属性一个belongs_to的关系 “100”(属性是关系)

我已经成功地创造一些查询返回预期的数据,但我不知道这些是那些在我的暗号理解从长远来看

任何帮助,将不胜感激“正确的”。 (特别是关于和|或者订单和效率)

回答

4

这样的事情?

您可以使用路径模式作为谓词,请参阅:http://neo4j.com/docs/2.1.5/query-where.html#query-where-patterns

MATCH (n:Person {email:"[email protected]"}) 
WHERE NOT (n)-[:BELONGS_TO]->() OR (n)-[:BELONGS_TO {id:100})->() 
RETURN n 
+0

的答案本身非常感谢。除了那些文档,您还可以将我指向与性能相关的查询主题。 (我非常希望稍后解决(当我有一百万个节点:)) – cechode 2014-10-20 21:52:26

+0

我也有相同的查询 – 2015-10-14 14:39:13