Neo4j MERGE与属性的关系

时间:2014-04-03 23:05:13

标签: neo4j cypher

我是Neo4j noob,我正在尝试根据关系属性在两个节点之间创建独特的关系。

假设我们有node Anode B。如果relationship RR.since = 1,我想在A和B之间创建一个新的R.since IS NULL。否则我希望得到现有的关系。

我试着这样做:

MATCH (n:Crew { name: "Neo" }),(m:Matrix { name: "Agent Smith" })
MERGE (n)-[r:CATCH]->(m)
ON CREATE SET r.since = 1
WITH r WHERE r.since IS NULL OR r.since = 1 AND r.source = "ab"
RETURN r

但查询不返回任何内容。

1 个答案:

答案 0 :(得分:0)

最好尝试使用此代码:

MATCH (n:Crew),(m:Matrix) WHERE n.name="Neo" and m.name="Agent Smith"
MERGE (n)-[r:CATCH]->(m)
ON CREATE SET r.since = 1
WITH r WHERE r.since IS NULL OR r.since = 1 AND r.source = "ab"
RETURN r