我需要从我的图表中删除一些节点属性。按照密码指南,我尝试了以下方法:
START n=node(1)
DELETE n.property
RETURN n
我收到一条错误消息:
Expression `Property` yielded `true`. Don't know how to delete that.
我可以在 console.neo4j.org 上复制它。你应该如何删除节点的属性?
我需要从我的图表中删除一些节点属性。按照密码指南,我尝试了以下方法:
START n=node(1)
DELETE n.property
RETURN n
我收到一条错误消息:
Expression `Property` yielded `true`. Don't know how to delete that.
我可以在 console.neo4j.org 上复制它。你应该如何删除节点的属性?
你用的是什么版本的 Neo4j?自 Neo4j 2.0 以来(我不确定究竟是什么里程碑,用 M03 尝试过),属性不再“删除”而是“删除”:
START n=node(1)
REMOVE n.property
RETURN n
应该适用于 Neo4j 2.x。
这也反映在文档中。在页面的右侧(可能在加载一段时间后)您有一个下拉菜单,用于选择您的 Neo4j 版本。当您转到 DELETE 文档并选择 2.0.0-M03 里程碑时,您会注意到“删除属性”菜单点消失了(链接到关于 DELETE 的 M03 文档:http: //docs.neo4j.org/chunked /2.0.0-M03/query-delete.html)。
相反,关于 REMOVE 的 2.0.0-M03 文档(此处:http ://docs.neo4j.org/chunked/2.0.0-M03/query-remove.html )现在确实列出了“删除属性”部分。
只是另一个例子。
对于Neo4j 3.0,给定具有属性键、名称和年龄的节点,删除年龄属性也是有效的:
创建节点:
CREATE (n {name:'Andres', age:25}) return n
删除属性键年龄:
MATCH (andres { name: 'Andres' }) REMOVE andres.age RETURN andres
来自 Neo4j 3.0 文档https://neo4j.com/docs/developer-manual/current/cypher/#query-remove
当您想要从节点之间的多个关系中删除关系属性时。
MATCH (a:Application {name:'A'})-[r:REQUEST_TO]-(d:Application {name:'B'})
WHERE ID(r) = 684
REMOVE r.property