Neo4j - Order By 子句
您可以使用 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 查询示例,它按照玩家使用 ORDERBY 子句得分的顺序返回上面创建的节点。
MATCH (n) RETURN n.name, n.runs ORDER BY n.runs
要执行上述查询,请执行以下步骤 −
第 1 步 − 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。 使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。
结果
执行后,您将得到以下结果。
按多个属性对节点排序
您可以使用 ORDEYBY 子句根据多个属性排列节点。
语法
以下是使用 ORDERBY 子句按多个属性排列节点的语法。
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 http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。
结果
执行后,您将得到以下结果。
按降序排列节点
您可以使用 ORDERBY 子句按降序排列数据库中的节点。
语法
以下是在数据库中排列节点的语法。
MATCH (n) RETURN n ORDER BY n.name DESC
示例
以下是一个示例 Cypher 查询,它使用 ORDERBY 子句按降序排列数据库中的节点。
MATCH (n) RETURN n.name, n.runs ORDER BY n.runs DESC
要执行上述查询,请执行以下步骤 −
第 1 步 − 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。 使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。
结果
执行后,您将得到以下结果。