Neo4j - Match 子句

在本章中,我们将了解 Match 子句以及使用该子句可以执行的所有功能。

使用 Match 获取所有节点

使用 Neo4j 的 MATCH 子句,您可以检索 Neo4j 数据库中的所有节点。

示例

在继续该示例之前,请创建 3 个节点和 2 个关系,如下所示。

CREATE (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"}) 
CREATE (Ind:Country {name: "India", result: "Winners"}) 
CREATE (CT2013:Tornament {name: "ICC Champions Trophy 2013"}) 
CREATE (Ind)-[r1:WINNERS_OF {NRR:0.938 ,pts:6}]->(CT2013) 

CREATE(Dhoni)-[r2:CAPTAIN_OF]->(Ind)  
CREATE (Dhawan:player{name: "shikar Dhawan", YOB: 1995, POB: "Delhi"}) 
CREATE (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"})  

CREATE (Dhawan)-[:TOP_SCORER_OF {Runs:363}]->(Ind) 
CREATE (Jadeja)-[:HIGHEST_WICKET_TAKER_OF {Wickets:12}]->(Ind) 

以下查询返回 Neo4j 数据库中的所有节点。

MATCH (n) RETURN n 

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

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

浏览器应用程序

第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。

Match Return

结果

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

执行结果

获取特定标签下的所有节点

使用match子句,可以获取特定标签下的所有节点。

语法

以下是获取特定标签下的所有节点的语法。

MATCH (node:label) 
RETURN node 

示例

以下是一个示例 Cypher 查询,它返回数据库中标签 player 下的所有节点。

MATCH (n:player) 
RETURN n 

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

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

浏览器应用程序

第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。

N Player

结果

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

特定标签

按关系匹配

您可以使用 MATCH 子句根据关系检索节点。

语法

以下是使用 MATCH 子句根据关系检索节点的语法。

MATCH (node:label)<-[: Relationship]-(n) 
RETURN n 

示例

以下是一个示例 Cypher 查询,用于使用 MATCH 子句根据关系检索节点。

MATCH (Ind:Country {name: "India", result: "Winners"})<-[: TOP_SCORER_OF]-(n) 
RETURN n.name 

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

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

浏览器应用程序

第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。

Top Scorer

结果

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

匹配关系

删除所有节点

您可以使用 MATCH 子句删除所有节点。

查询

以下是删除 Neo4j 中所有节点的查询。

MATCH (n) detach delete n 

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

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

浏览器应用程序

第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。

Desired Press

结果

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

已删除的关系