我在这些中创建了一些节点和关系。但在做这些事情的时候发生了错误。我想删除所有具有“SGS”的节点,除了ID为2的节点。
以下是我运行以创建节点和关系的脚本:
(如果可能的话,还请建议如何编辑这个)
我尝试了DELETE(以及匹配,其中,IS NULL等)与一些不同的试错方法,但无法实现相同。请帮助。
答案 0 :(得分:7)
看起来所有节点都有一个名称,但要删除的节点除外。 所以你可以尝试
match n
WHERE NOT (HAS (n.name)) //find all nodes with no name property
with n
match n-[r]-() //find all nodes connected to that node
delete r,n //delete its relations and then the node itself
(注意未经测试)
在上面的create语句中,您使用(rkn)代替(rk),也可能(回答)而不是其他东西。所以(rkn) - [:READ] - >(bk1)将创建一个没有属性的节点来表示rkn和与OneNight @ CallCenter的READ关系。您只需要验证并修复它们。
e.g。关系都是指一个名为(rkn)的节点,所以我将你的create语句中的rk节点重命名为rkn。还请验证您在关系中引用的每个节点实际上都映射到create语句中的节点。
注意:Cypher不再支持HAS,请改用EXISTS!
答案 1 :(得分:2)
这个对我有用
match (n) WHERE NOT (EXISTS (n.name)) DETACH DELETE n