📜  Neo4j聚合函数(1)

📅  最后修改于: 2023-12-03 15:33:05.898000             🧑  作者: Mango

Neo4j 聚合函数介绍

Neo4j 是目前最流行的图形数据库之一,支持 SQL 类似的查询语言 Cypher。聚合函数在 Cypher 查询语言中发挥着重要作用。本文将重点介绍 Neo4j 中的 Cypher 聚合函数。

Count 函数

count() 用于计算指定条件下的节点数量。

例如,计算所有性别为男性的人的数量:

MATCH (n:Person {gender: 'male'})
RETURN count(n)
Sum 函数

sum() 用于计算指定属性的总和。

例如,计算一组电影的票房总和:

MATCH (n:Movie)
RETURN sum(n.boxOffice)
Avg 函数

avg() 用于计算指定属性的平均值。

例如,计算一组电影的评分平均值:

MATCH (n:Movie)
RETURN avg(n.rating)
Max 和 Min 函数

max()min() 分别用于计算指定属性的最大值和最小值。

例如,找出一组电影中最高和最低的评分:

MATCH (n:Movie)
RETURN max(n.rating), min(n.rating)
Collect 函数

collect() 用于将匹配的节点打包成一个列表,便于之后的操作。

例如,收集一个人的所有好友:

MATCH (n:Person {name: 'Alice'})-[:FRIENDS_WITH]->(m:Person)
RETURN collect(m)
Group 函数

group() 用于将结果分组,方便进行聚合操作。

例如,将电影按照类型进行分组:

MATCH (n:Movie)
RETURN n.genre, count(n)
GROUP BY n.genre
Conclusion

本文介绍了 Neo4j 中常用的 Cypher 聚合函数,包括 count()sum()avg()max()min()collect()group()。掌握这些函数可以提高查询效率,使查询更加灵活和高效。