neo4j Cypher使用属性创建关系

时间:2014-09-09 13:10:11

标签: neo4j cypher

如何使用cypher在多个节点之间创建关系。

我有对象

A:{id:123,回复:'',msg:“大家好!它的亚当在这里”} B:{id:32132,回复:123,msg:“嗨,亚当!我是史蒂夫”} C {id:4322,回复:123,msg:“你好!Ana在这里”}

D:{id:111,回复:'',msg:“嗨”} E:{id:222,回复:111,msg:“嗨”} F {id:3333,回复:222,msg:“这里”}

所以我想创建一个从节点B和C到节点A的关系“IS_A_REPLY”...如何为多个节点实现这一点?这是明确地声明这一点,因为它超过一千个节点。

在psudocode中

为allnode if(nodA.id == nodeB.replyto)然后 创造关系

1 个答案:

答案 0 :(得分:2)

我认为这将取决于您在那里的节点中具有的id字段的性质,但是:

MATCH (msg:Message) 
WHERE msg.replyTo IS NOT NULL
MATCH (origin:Message{id:msg.id}
CREATE msg-[:IS_A_REPLY]->origin

或者:

MATCH (msg:Message), (origin:Message)
WHERE msg.replyTo IS NOT NULL AND ID(origin)= msg.replyTo
CREATE msg-[:IS_A_REPLY]->origin