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 查询,它使用 ORDER BY 子句按照球员得分(runs)对上述创建的节点进行排序并返回。
MATCH (n) RETURN n.name, n.runs ORDER BY n.runs
要执行上述查询,请按照以下步骤操作 −
步骤 1 − 打开 Neo4j 桌面应用程序并启动 Neo4j Server。使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如以下截图所示。
步骤 2 − 将所需的查询复制并粘贴到美元提示符中,然后按下以下截图中突出显示的播放按钮(执行查询)。
结果
执行后,您将得到以下结果。
按多个属性对节点排序
您可以使用 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 Server。使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如以下截图所示。
步骤 2 − 将所需的查询复制并粘贴到美元提示符中,然后按下以下截图中突出显示的播放按钮(执行查询)。
结果
执行后,您将得到以下结果。
按降序对节点排序
您可以使用 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 Server。使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如以下截图所示。
步骤 2 − 将所需的查询复制并粘贴到美元提示符中,然后按下以下截图中突出显示的播放按钮(执行查询)。
结果
执行后,您将得到以下结果。
