Neo4j - 排序子句



您可以使用 ORDER BY 子句对结果数据进行排序。

语法

以下是 ORDER BY 子句的语法。

MATCH (n)  
RETURN n.property1, n.property2 . . . . . . . .  
ORDER BY n.property

示例

在继续示例之前,请在 Neo4j 数据库中创建 5 个节点,如下所示。

CREATE(Dhawan:player{name:"shikar Dhawan", YOB: 1985, runs:363, country: "India"})
CREATE(Jonathan:player{name:"Jonathan Trott", YOB:1981, runs:229, country:"South Africa"})
CREATE(Sangakkara:player{name:"Kumar Sangakkara", YOB:1977, runs:222, country:"Srilanka"})
CREATE(Rohit:player{name:"Rohit Sharma", YOB: 1987, runs:177, country:"India"})
CREATE(Virat:player{name:"Virat Kohli", YOB: 1988, runs:176, country:"India"})

以下是一个示例 Cypher 查询,它使用 ORDER BY 子句按玩家得分对上面创建的节点进行排序。

MATCH (n)  
RETURN n.name, n.runs 
ORDER BY n.runs 

要执行上述查询,请执行以下步骤:

步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://127.0.0.1:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。

Browser App

步骤 2 - 将所需的查询复制粘贴到美元提示符中,然后按播放按钮(执行查询),如下面的屏幕截图中突出显示。

Return Name

结果

执行后,您将获得以下结果。

Records

按多个属性排序节点

您可以使用 ORDER BY 子句根据多个属性对节点进行排序。

语法

以下是使用 ORDER BY 子句按多个属性排序节点的语法。

MATCH (n) 
RETURN n 
ORDER BY n.age, n.name 

示例

以下是一个示例 Cypher 查询,它根据 runs 和 country 属性对本章前面创建的节点进行排序。

MATCH (n) 
RETURN n.name, n.runs, n.country 
ORDER BY n.runs, n.country

要执行上述查询,请执行以下步骤:

步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://127.0.0.1:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。

Browser App

步骤 2 - 将所需的查询复制粘贴到美元提示符中,然后按播放按钮(执行查询),如下面的屏幕截图中突出显示。

Order By Runs

结果

执行后,您将获得以下结果。

Ordering Nodes

按降序排序节点

您可以使用 ORDER BY 子句按降序对数据库中的节点进行排序。

语法

以下是按降序排列数据库中节点的语法。

MATCH (n) 
RETURN n 
ORDER BY n.name DESC 

示例

以下是一个示例 Cypher 查询,它使用 ORDER BY 子句按降序对数据库中的节点进行排序。

MATCH (n)  
RETURN n.name, n.runs 
ORDER BY n.runs DESC 

要执行上述查询,请执行以下步骤:

步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://127.0.0.1:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。

Browser App

步骤 2 - 将所需的查询复制粘贴到美元提示符中,然后按播放按钮(执行查询),如下面的屏幕截图中突出显示。

Descending Order

结果

执行后,您将获得以下结果。

Order By
广告