Neo4j – 设置子句

Neo4j – 设置子句


使用 Set 子句,您可以向现有节点或关系添加新属性,还可以添加或更新现有属性值。

在本章中,我们将讨论如何 –

  • 设置属性
  • 删除属性
  • 设置多个属性
  • 在节点上设置标签
  • 在一个节点上设置多个标签

设置属性

使用 SET 子句,您可以在节点中创建新属性。

句法

以下是设置属性的语法。

MATCH (node:label{properties . . . . . . . . . . . . . . }) 
SET node.property = value 
RETURN node

例子

在继续示例之前,首先创建一个名为 Dhawan 的节点,如下所示。

CREATE (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"}) 

以下是一个示例 Cypher Query,用于创建名为“highestscore”且值为“187”的属性

MATCH (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"}) 
SET Dhawan.highestscore = 187 
RETURN Dhawan

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

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

浏览器应用

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

火柴人

结果

执行时,您将得到以下结果。在这里可以观察到在名为“Dhawan”的节点中创建了一个键值对highestscore/187的属性。

核心价值

删除属性

您可以通过将NULL作为值传递给现有属性来删除现有属性

句法

以下是使用 SET 子句从节点中删除属性的语法。

MATCH (node:label {properties}) 
SET node.property = NULL 
RETURN node 

例子

在继续示例之前,首先创建一个节点“jadeja”,如下所示。

Create (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"})

以下是一个示例 Cypher Query,它使用 SET 子句从此节点中删除名为 POB 的属性,如下所示。

MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"}) 
SET Jadeja.POB = NULL 
RETURN Jadeja 

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

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

浏览器应用

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

删除属性

结果

执行时,您将得到以下结果。在这里您可以观察到名为POB的变量已被删除。

删除的POB

设置多个属性

同样,您可以使用 Set 子句在节点中创建多个属性。为此,您需要用逗号指定这些键值对。

句法

以下是使用 SET 子句在节点中创建多个属性的语法。

MATCH (node:label {properties}) 
SET node.property1 = value, node.property2 = value 
RETURN node 

例子

以下是一个示例 Cypher Query,它使用 Neo4j 中的 SET 子句在节点中创建多个属性。

MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988})  
SET Jadeja.POB: "NavagamGhed", Jadeja.HS = "90" 
RETURN Jadeja

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

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

浏览器应用

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

多重属性

结果

执行时,您将得到以下结果。在这里,您可以看到创建了名为 POB 和 HS 的属性。

执行属性

在节点上设置标签

您可以使用 SET 子句为现有节点设置标签。

句法

以下是为现有节点设置标签的语法。

MATCH (n {properties . . . . . . . }) 
SET n :label 
RETURN n 

例子

在继续示例之前,首先创建一个节点“Anderson”,如下所示。

CREATE (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"})

以下是使用 SET 子句在节点上设置标签的示例 Cypher 查询。此查询将标签“player”添加到节点 Anderson 并返回它。

MATCH (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"}) 
SET Anderson: player 
RETURN Anderson 

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

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

浏览器应用

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

标签节点

结果

执行时,您将得到以下结果。在这里你可以观察到名为“player”的标签被添加到节点上。

添加玩家

在一个节点上设置多个标签

您可以使用 SET 子句为现有节点设置多个标签。在这里,您需要通过用冒号“:”分隔来指定标签。

句法

以下是使用 SET 子句为现有节点设置多个标签的语法。

MATCH (n {properties . . . . . . . }) 
SET n :label1:label2 
RETURN n 

例子

在继续示例之前,首先创建一个名为“Ishant”的节点,如下所示。

CREATE (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) 

以下是一个示例 Cypher Query,用于使用 SET 子句在节点上创建多个标签。

MATCH (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) 
SET Ishant: player:person 
RETURN Ishant 

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

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

浏览器应用

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

多标签

结果

执行时,您将得到以下结果。在这里,您可以观察到两个标签 – 人和玩家 – 被添加到名为Ishant的节点

伊桑特播放器

觉得文章有用?

点个广告表达一下你的爱意吧 !😁