是否可以使用Cypher更改节点上的标签?
我有一个标签为Book
的节点,如下所示。我想将Book
标签更改为DeletedBook
。
(u:Person)-[r]-(b:Book{id:id1})
(u:Person)-[r]-(b:DeletedBook{id:id1})
答案 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)