Neo4j 简明教程

Neo4j - Order By Clause

您可以使用 ORDER BY 子句按顺序排列结果数据。

Syntax

以下是 ORDER BY 从句的语法。

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

Example

在继续举例之前,请按照以下指示在 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"})

以下是一个使用 ORDERBY 子句按球员得分顺序返回上述创建节点的示例 Cypher 查询。

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

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

Step 1 - 打开 Neo4j Desktop App 并启动 Neo4j Server。使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用,如下面的屏幕截图所示。

browser app

Step 2 - 在美元提示符中复制并粘贴所需的查询,并按播放按钮(执行查询)突出显示在下面的屏幕截图中。

return name

Result

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

records

Ordering Nodes by Multiple Properties

您可以使用 ORDEYBY 子句按多个属性整理节点。

Syntax

以下是使用 ORDERBY 子句按多个属性整理节点的语法。

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

Example

以下是一个示例 Cypher 查询,该查询按以下属性对本章前面创建的节点进行整理:得分和国家。

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

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

Step 1 - 打开 Neo4j Desktop App 并启动 Neo4j Server。使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用,如下面的屏幕截图所示。

browser app

Step 2 - 在美元提示符中复制并粘贴所需的查询,并按播放按钮(执行查询)突出显示在下面的屏幕截图中。

order by runs

Result

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

ordering nodes

Ordering Nodes by Descending Order

您可以使用 ORDERBY 子句按降序排列数据库中的节点。

Syntax

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

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

Example

以下是一个示例 Cypher 查询,该查询使用 ORDERBY 子句按降序排列数据库中的节点。

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

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

Step 1 - 打开 Neo4j Desktop App 并启动 Neo4j Server。使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用,如下面的屏幕截图所示。

browser app

Step 2 - 在美元提示符中复制并粘贴所需的查询,并按播放按钮(执行查询)突出显示在下面的屏幕截图中。

descending order

Result

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

order by