删除其中一个属性并在满足条件下将其创建为新节点

问题描述 投票:-2回答:1

我是Neo4j世界的新手,我已经将一个大的csv文件导入Neo4j,包括以下标题:(所以现在csv的每一行在neo4j和obj1中都有以下属性作为节点标签)

obj1,obj2,method1,method2,method3

方法1到3具有通过已成对比较obj1和obj2得到的浮点值。所以我想在method1上设置一个阈值(并且对于所有其他方法分别设置),如果检查值高于设置的阈值,则删除obj2属性并将其创建为新节点和obj1属性之间的边缘(已经是节点其值为label)和新创建的obj2节点,obj2节点从obj1获取所有属性。希望有人能帮忙!

neo4j cypher pairwise
1个回答
0
投票

等候接听

例如,如果我们有一个带有TestNode标签的节点和一个名为value的属性,我们的阈值是5:

查询创建第一个节点:

CREATE (:TestNode {value:20})

然后我们需要查询这些节点,如果value大于5,我将删除value属性,然后创建新节点:

MATCH (t:TestNode) WHERE t.value> 5 SET t.value=null CREATE (:TestNode {value:10})

第一个查询结果:

First query result

第二个查询结果:

Second query result

© www.soinside.com 2019 - 2024. All rights reserved.