获取添加的最后一个节点或关系的ID

时间:2019-06-14 14:24:54

标签: neo4j cypher

我添加一个节点:

CREATE (b:MyLabel{ Name : "Bob the Node", Disposition : "Happy" })

稍后,我想向该节点添加另一个标签:

MATCH(n) WHERE ID(n) = 3   SET n:Circle

如何获得 3 或添加节点时的状态?

2 个答案:

答案 0 :(得分:1)

您可以使用ID最后返回创建的节点的RETURN

CREATE (b:MyLabel{ Name : "Bob the Node", Disposition : "Happy" }) RETURN ID(b)

答案 1 :(得分:1)

那不是您应该如何获得节点的方法。

要获取节点的本机ID,您必须已经具有该节点(或至少一个与该节点连接的关系)。

您应该以这样一种方式设计数据模型,即可以通过其属性或关系轻松获取节点。例如,如果http://example.com/new-page节点具有唯一的new-path值,那么您可以这样做:

MyLabel

顺便说一句,在删除原始节点/关系之后,可以将本机ID重新用于新的节点/关系。因此,除非您知道自己在做什么,否则不应该将本机ID存储在某个地方,以后再使用。