neo4j 入门教程 Neo4j CQL - AGGREGATION聚合

2024-02-25 开发教程 neo4j 入门教程 匿名 0

和SQL一样,Neo4j CQL提供了一些在RETURN子句中使用的聚合函数。 它类似于SQL中的GROUP BY子句。

我们可以使用MATCH命令中的RETURN +聚合函数来处理一组节点并返回一些聚合值。

聚合函数列表

S.No.聚集功能描述
1。COUNT它返回由MATCH命令返回的行数。
2。MAX它从MATCH命令返回的一组行返回最大值。
3。MIN它返回由MATCH命令返回的一组行的最小值。
4。SUM它返回由MATCH命令返回的所有行的求和值。
5。AVG它返回由MATCH命令返回的所有行的平均值。

现在我们将通过示例详细讨论每个Neo4j CQL AGGREGATION函数

计数

它从MATCH子句获取结果,并计算结果中出现的行数,并返回该计数值。 所有CQL函数应使用“()”括号。

函数语法

COUNT(<value>)

注意 -

<value>可以是*,节点或关系标签名称或属性名称。

示例-

此示例演示如何使用COUNT(*)函数返回数据库中可用的Employee节点数。

步骤1 -在数据浏览器中的dollar提示符下键入以下命令。

MATCH (e:Employee)
RETURN e.id,e.name,e.sal,e.deptno

步骤2 -点击执行按钮,观察结果。

我们可以观察到这个查询返回4行。

步骤3 -键入以下命令,然后单击执行按钮。

MATCH (e:Employee) RETURN COUNT(*)

此查询返回值4,因为数据库包含4个Employee节点。

MAX

它采用一组行和节点或关系的<property-name>作为输入,并从给定行的give <property-name>列中查找最大值。

函数语法

MAX(<property-name> )

MIN

它采用一组行和节点或关系的<property-name>作为输入,并从给定行的give <property-name>列中查找最小值。

函数语法

MIN(<property-name> )

注意 -

<property-name>应该是节点或关系的名称。

让我们用一个例子看看MAX和MIN的功能。

示例-

此示例演示如何从所有员工节点中查找最高和最低工资值

步骤1 -在数据浏览器中的dollar提示符下键入以下命令。

MATCH (e:Employee)
RETURN e.id,e.name,e.sal,e.deptno

步骤2 -点击执行按钮,观察结果。

我们可以观察到这个查询返回4行。

步骤3 -键入以下命令,然后单击执行按钮。

MATCH (e:Employee)
RETURN MAX(e.sal),MIN(e.sal)

此命令从数据库中可用的所有Employee节点中查找最大和最小工资值。

AVG

它采用一组行和节点或关系的<property-name>作为输入,并从给定行的give <property-name>列中查找平均值。

函数的语法

AVG(<property-name> )

SUM

它采用一组行和节点或关系的<property-name>作为输入,并从给定行的give <property-name>列中查找求和值。

函数的语法

SUM(<property-name> )

让我们用一个例子来检查SUM和AVG函数。

例1 -

此示例演示如何查找所有员工节点的总和平均薪水值

步骤1 -在数据浏览器中的dollar提示符下键入以下命令。

MATCH (e:Employee)
RETURN e.id,e.name,e.sal,e.deptno

步骤2 -点击执行按钮,观察结果。

我们可以观察到这个查询返回4行。

第3步 -键入以下命令,然后单击执行按钮。

MATCH (e:Employee)
RETURN SUM(e.sal),AVG(e.sal)

此命令从数据库中可用的所有Employee节点查找总和平均薪水值。