- Neo4j CQL
- Neo4j CQL - 简介
- Neo4j CQL - 创建节点
- Neo4j CQL - 创建关系
- Neo4j CQL 写入语句
- Neo4j - MERGE 命令
- Neo4j - SET 语句
- Neo4j - DELETE 语句
- Neo4j - REMOVE 语句
- Neo4j - FOREACH 语句
- Neo4j CQL 通用语句
- Neo4j - RETURN 语句
- Neo4j - ORDER BY 语句
- Neo4j - LIMIT 语句
- Neo4j - SKIP 语句
- Neo4j - WITH 语句
- Neo4j - UNWIND 语句
- Neo4j CQL 函数
- Neo4j - 字符串函数
- Neo4j - 聚合函数
- Neo4j CQL 管理
- Neo4j - 备份与恢复
- Neo4j - 索引
- Neo4j - 创建唯一约束
- Neo4j - 删除唯一约束
- Neo4j 有用资源
- Neo4j - 快速指南
- Neo4j - 有用资源
- Neo4j - 讨论
Neo4j - SET 语句
使用 SET 语句,您可以为现有的节点或关系添加新的属性,还可以添加或更新现有的属性值。
在本章中,我们将讨论如何:
- 设置属性
- 删除属性
- 设置多个属性
- 为节点设置标签
- 为节点设置多个标签
设置属性
使用 SET 语句,您可以在节点中创建一个新的属性。
语法
以下是设置属性的语法。
MATCH (node:label{properties . . . . . . . . . . . . . . })
SET node.property = value
RETURN node
示例
在继续示例之前,请先创建一个名为 Dhawan 的节点,如下所示。
CREATE (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"})
以下是一个示例 Cypher 查询,用于创建一个名为“highestscore”、值为“187”的属性。
MATCH (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"})
SET Dhawan.highestscore = 187
RETURN Dhawan
要执行上述查询,请执行以下步骤:
步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://: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 查询,它使用 SET 语句删除此节点中名为 POB 的属性,如下所示。
MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"})
SET Jadeja.POB = NULL
RETURN Jadeja
要执行上述查询,请执行以下步骤:
步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
步骤 2 - 将所需的查询复制并粘贴到美元提示符中,然后按播放按钮(执行查询),如下面的屏幕截图中突出显示。
结果
执行后,您将获得以下结果。在这里您可以观察到,名为POB的变量已被删除。
设置多个属性
同样,您可以使用 Set 语句在节点中创建多个属性。为此,您需要使用逗号指定这些键值对。
语法
以下是使用 SET 语句在节点中创建多个属性的语法。
MATCH (node:label {properties})
SET node.property1 = value, node.property2 = value
RETURN node
示例
以下是一个示例 Cypher 查询,它使用 Neo4j 中的 SET 语句在节点中创建多个属性。
MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988})
SET Jadeja.POB: "NavagamGhed", Jadeja.HS = "90"
RETURN Jadeja
要执行上述查询,请执行以下步骤:
步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
步骤 2 - 将所需的查询复制并粘贴到美元提示符中,然后按播放按钮(执行查询),如下面的屏幕截图中突出显示。
结果
执行后,您将获得以下结果。在这里您可以观察到,名为 POB 和 HS 的属性已被创建。
为节点设置标签
您可以使用 SET 语句为现有节点设置标签。
语法
以下是为现有节点设置标签的语法。
MATCH (n {properties . . . . . . . })
SET n :label
RETURN n
示例
在继续示例之前,请先创建一个名为“Anderson”的节点,如下所示。
CREATE (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"})
以下是一个示例 Cypher 查询,用于使用 SET 语句为节点设置标签。此查询将标签“player”添加到节点 Anderson 并返回它。
MATCH (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"})
SET Anderson: player
RETURN Anderson
要执行上述查询,请执行以下步骤:
步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://: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 查询,用于使用 SET 语句在节点上创建多个标签。
MATCH (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"})
SET Ishant: player:person
RETURN Ishant
要执行上述查询,请执行以下步骤:
步骤 1 - 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL https://:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
步骤 2 - 将所需的查询复制并粘贴到美元提示符中,然后按播放按钮(执行查询),如下面的屏幕截图中突出显示。
结果
执行后,您将获得以下结果。在这里您可以观察到,两个标签 - person 和 player - 已添加到名为Ishant的节点中。