我正在将数据集聚合到neo4j图中,并为它编写了一个python脚本,使用py2neo执行cypher查询。
考虑一种情况,其中我有一个“item”类型的节点,其属性为“type”和“count”,并且假设我有5种不同类型的项目。
我的脚本遍历数据集,这就是它的作用:
我知道单独的步骤1和2(b)可以使用MERGE进行分组。这意味着密码将检查模式
(n:item{type:"detergent", count:1})
如果它不存在,将创建。
我想从密码大师那里知道的是,我可以使用MERGE甚至更新属性值吗?具体来说,如果经过数据集的10次迭代,如果洗涤剂的数量已经变为4,从我现在使用的程序,我可以替换该程序以使用MERGE,以便解决以下目的:
1)如果洗涤剂出现在迭代中,如果洗涤剂节点不存在,则密码应该为洗涤剂创建一个计数为1的节点。
2)如果洗涤剂出现在迭代中,如果洗涤剂节点已经存在,则密码应该将计数属性增加1。
你能尝试一下:
MERGE (n:item{type:"detergent")
ON CREATE SET n.count=1
ON MATCH SET n.count=n.count+1
ON CREATE
:当节点不存在时ON MATCH
:当在图中找到节点时
希望有所帮助