返回特定节点 属性 值的总和 Neo4j
Returning sum of specific node property values Neo4j
我在 Neo4j 图中有相同类型的节点。我要return节点值求和。下面是一个示例图:
我想 return 它们的节点值 (val
s) 求和 w.r.t alias
和 name
字段。
[
{"name": "a", "val": 120},
{"name": "b", "val": 60}
]
第一个对象对具有 name
值 x
、y
和 a
的节点求和,因为 x
和 y
有一个别名值为 a
.
的字段
更新:
确实,节点中的val
属性 表示节点具有的RELATED_TO
关系的数量。我想将其抽象化以简化问题。真正的方案如下图。每个白色节点与绿色节点都有几个 RELATED_TO
关系。如何将此类关系的数量映射到终端节点(求和 val
字段)?
应该这样做
MATCH (n)
RETURN COALESCE(n.alias, n.name) AS name, sum(n.val) AS val
根据您的更新,您可以通过
计算通过别名或姓名求和的关系
MATCH (n)<-[rel:RELATED_TO]-()
RETURN COALESCE(n.alias, n.name) AS name, count(rel) AS cnt
我在 Neo4j 图中有相同类型的节点。我要return节点值求和。下面是一个示例图:
我想 return 它们的节点值 (val
s) 求和 w.r.t alias
和 name
字段。
[
{"name": "a", "val": 120},
{"name": "b", "val": 60}
]
第一个对象对具有 name
值 x
、y
和 a
的节点求和,因为 x
和 y
有一个别名值为 a
.
更新:
确实,节点中的val
属性 表示节点具有的RELATED_TO
关系的数量。我想将其抽象化以简化问题。真正的方案如下图。每个白色节点与绿色节点都有几个 RELATED_TO
关系。如何将此类关系的数量映射到终端节点(求和 val
字段)?
应该这样做
MATCH (n)
RETURN COALESCE(n.alias, n.name) AS name, sum(n.val) AS val
根据您的更新,您可以通过
计算通过别名或姓名求和的关系MATCH (n)<-[rel:RELATED_TO]-()
RETURN COALESCE(n.alias, n.name) AS name, count(rel) AS cnt