[Neo4J] aggregation聚合 Cypher查询语言(CQL) 语法参考教程

类似于sql中的group by功能, 根据分组键计算聚合值

match (n {name: 'a'}) -- (x)
// n是分组键, 即name=a的节点, count(*)是匹配成功的次数, 即满足条件的x的个数
return n, count(*)

match (n) - [r] - (x)
// 计算每种类型的关系各有多少个
return type(r), count(*)

match (n:person) -- (x)
// 计算满足条件的x节点的个数
return count(x)

match (n)
// 计算有属性的节点的个数
return count(n.property)

match (n)
// 计算所有n的某个属性的和, null被忽略
return sum(n.property)

类似的聚合函数还有:
avg 均值
percentileDisc(n.property, x) 计算给定值在一个组中的百分位
percentileCont(n.property, x) 计算给定值在一个组中的百分位
stddev 标准差
min 最小值
collect(n.property) 将所有的值组成一个列表

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容