如何删除节点的所有属性?

时间:2017-01-27 23:40:12

标签: neo4j cypher

我试过了:

match (n:MyNode) remove n.*

但这不起作用。上下文:我想基本上用新数据重新定义节点,而不是删除它(这意味着我也必须删除它的所有链接)并再次创建它,我想删除属性并设置我的新值。我不想只设置新值,因为应该删除不再使用的属性

顺便说一下,我知道我可以通过keys函数获取节点的属性,但我无法弄清楚如何将它用于我的目的:

match (n:MyNode) remove keys(n)
match (n:MyNode) remove n[keys(n)]

不确定如何取消引用返回的数组以删除属性

1 个答案:

答案 0 :(得分:5)

这应该有效:

MATCH (n:MyNode)
SET n = {};

SET n = $map语法将所有现有属性替换为地图中的属性。由于查询使用空映射,因此最终结果是删除所有属性。