能否在Cypher中重命名已有取值的属性o.operating_system为o.os?
Cypher 属性重命名操作方法
Cypher没有专门用于直接重命名属性的子句,要将属性o.operating_system重命名为o.os,需要分两步完成:
第一步:为目标节点添加新属性
os,并将原属性operating_system的值赋给它MATCH (o) WHERE EXISTS(o.operating_system) SET o.os = o.operating_system若只需处理特定标签的节点,可在MATCH子句中指定标签优化性能,比如:
MATCH (o:YourTargetLabel) WHERE EXISTS(o.operating_system) SET o.os = o.operating_system第二步:删除原属性
operating_systemMATCH (o) WHERE EXISTS(o.operating_system) REMOVE o.operating_system
如果要保证操作的原子性(避免中途出错导致数据不一致),可将两步操作放在一个事务中执行:
BEGIN MATCH (o) WHERE EXISTS(o.operating_system) SET o.os = o.operating_system REMOVE o.operating_system COMMIT
内容的提问来源于stack exchange,提问作者ShymPi1999
相关产品推荐
相关产品推荐

