首页 > 解决方案 > Cypher 将属性设置为不同节点的属性之和

问题描述

我试图总结所有后代的属性 df 并将其设置为新属性。我需要使用 distinct 子句,这样我就不会多次总结相同的值。sum 函数不能与 SET 子句一起使用。

MATCH (n:Ontology)<-[:isA*0..13]-(m:Ontology)
WITH distinct m AS terms, n AS model
SET model.DF = sum(model.df)
RETURN model.id, model.DF

我可以设法使用 sum 函数的唯一方法是在 WHERE 子句中,但不能与 distinct 结合使用。

MATCH (n:Ontology)<-[:isA*0..13]-(m:Ontology)
WITH n AS model, sum(m.df) AS DF
SET model.DF= DF
RETURN model.id, model.DF

有没有办法先使用 distinct 然后将新属性设置为总和?

标签: sumsetcypherdistinct

解决方案


推荐阅读