Neo4j之Aggregation基础

在 Neo4j 中,聚合(Aggregation)是对数据进行计算、汇总和统计的过程。以下是一些使用聚合函数的常见例子,以及它们的解释:

计算节点数量:

MATCH (p:Person)
RETURN count(p) AS totalPersons;

这个查询会计算具有 "Person" 标签的节点的数量,并将结果作为 "totalPersons" 返回。

计算属性的总和:

MATCH (p:Person)
RETURN sum(p.age) AS totalAge;

这个查询会计算所有 "Person" 节点的年龄属性的总和,并将结果作为 "totalAge" 返回。

查找最大值和最小值:

MATCH (m:Movie)
RETURN max(m.released) AS maxYear, min(m.released) AS minYear;

这个查询会查找所有电影节点的 "released" 属性的最大值和最小值,并将结果分别作为 "maxYear" 和 "minYear" 返回。

计算平均值:

MATCH (p:Person)
RETURN avg(p.age) AS averageAge;

这个查询会计算所有 "Person" 节点的年龄属性的平均值,并将结果作为 "averageAge" 返回。

分组计数:

MATCH (p:Person)-[:ACTED_IN]->(m:Movie)
RETURN m.title, count(p) AS actorsCount;

按属性值分组并计算总和:

MATCH (p:Person)
RETURN p.country, sum(p.age) AS totalAgeByCountry
ORDER BY totalAgeByCountry DESC;

这个查询会按照 "country" 属性值进行分组,并计算每个国家的年龄总和,然后按总和降序排列返回结果。

你可能感兴趣的:(Neo4J,neo4j)