Neo4J:重命名属性键
Posted
技术标签:
【中文标题】Neo4J:重命名属性键【英文标题】:Neo4J: Renaming property keys 【发布时间】:2015-04-21 12:11:39 【问题描述】:我刚开始使用 Neo 并试图寻找有关此主题的先前问题。我需要帮助来重命名其中一个属性键。
我创建了以下节点:
CREATE (Commerce:Category title:' Commerce', Property:'Category', Owner:'Magic Pie', Manager:'Simple Simon')
现在想将标题重命名为名称。有没有办法做到这一点?我不想删除该节点,因为有 100 个具有属性“title”的节点。
【问题讨论】:
【参考方案1】:是的,您想用旧属性title
的值来SET
一个新属性name
。然后REMOVE
旧属性title
。像这样的...
MATCH (c:Category)
WHERE c.name IS NULL
SET c.name = c.title
REMOVE c.title
如果您有许多节点,建议以较小的批次执行操作。这是一次将操作限制为 10k 的示例。
MATCH (c:Category)
WHERE c.name IS NULL
WITH c
LIMIT 10000
SET c.name = c.title
REMOVE c.title
【讨论】:
有趣的事实,但是当您将查询传递给 Neo4j 时,它会在执行操作之前将所有内容加载到内存中。这就是为什么 Neo4j 浏览器在运行怪物查询时会长时间崩溃的原因。有一个cypher shell program
你可以得到明显的补救措施,但如上所述,这是由于缺乏批处理。以上是关于Neo4J:重命名属性键的主要内容,如果未能解决你的问题,请参考以下文章