Neo4j之Aggregation基础

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

计算节点数量:

sql 复制代码
MATCH (p:Person)
RETURN count(p) AS totalPersons;

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

计算属性的总和:

sql 复制代码
MATCH (p:Person)
RETURN sum(p.age) AS totalAge;

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

查找最大值和最小值:

sql 复制代码
MATCH (m:Movie)
RETURN max(m.released) AS maxYear, min(m.released) AS minYear;

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

计算平均值:

sql 复制代码
MATCH (p:Person)
RETURN avg(p.age) AS averageAge;

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

分组计数:

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

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

sql 复制代码
MATCH (p:Person)
RETURN p.country, sum(p.age) AS totalAgeByCountry
ORDER BY totalAgeByCountry DESC;

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

相关推荐
wxl7812272 天前
基于neo4j存储知识树-mac
macos·neo4j
麦麦大数据4 天前
neo4j+django+deepseek知识图谱学习系统对接前后端分离前端vue
vue.js·django·知识图谱·neo4j·deepseek·在线学习系统
失眠的树亚7 天前
neo4j中导入csv格式的三元组数据
neo4j
阿梦Anmory8 天前
【neo4j数据导出并在其他电脑导入】
数据库·neo4j
シ風箏9 天前
Neo4j【环境部署 03】插件APOC和ALGO配置使用实例分享(网盘分享3.5.5兼容版本插件)
neo4j·图数据库·apoc·algo·图数据库插件
老马啸西风9 天前
Neo4j GDS-06-neo4j GDS 库中社区检测算法介绍
网络·算法·云原生·中间件·neo4j
Gratitute_林腾12 天前
neo4j-如何让外部设备访问wsl中的neo4j
neo4j
山外有山a13 天前
从 Neo4j 数据库中提取数据并绘制图谱
数据库·neo4j
2401_8979300614 天前
neo4j删除所有数据
数据库·neo4j
weixin_3077791315 天前
稳定运行的以Neo4j图数据库为数据源和目标的ETL性能变差时提高性能方法和步骤
数据库·性能优化·neo4j·etl