如何更改/更新Neo4j中的标签 - Cypher?

时间:2014-06-05 09:12:53

标签: neo4j cypher

是否可以使用Cypher更改节点上的标签? 我有一个标签为Book的节点,如下所示。我想将Book标签更改为DeletedBook

(u:Person)-[r]-(b:Book{id:id1})

(u:Person)-[r]-(b:DeletedBook{id:id1})

2 个答案:

答案 0 :(得分:10)

您可以使用REMOVE标签上的Book和新标签上的SET来执行此操作:

MATCH (p:Person)-[r]-(b:Book {id: id1})
REMOVE b:Book
SET b:DeletedBook
RETURN b

您应该查看Neo4j Cypher Refcard以获取对Cypher 2.x的完整参考。

答案 1 :(得分:0)

最佳做法是向要删除的节点添加“删除”标签。 我们更新时不要删除节点的标签。

MATCH (p:Person)-[r]-(b:Book {id: id1})
SET b: Deleted
RETURN b

所以book节点将有2个标签(:Book:Deleted)