Neo4j数据库(二)

目录

WHERE子句

简单WHERE子句语法

复杂WHERE子句语法

DELETE删除

删除节点

DELETE节点子句语法

REMOVE删除

删除节点/关系的属性

REMOVE属性子句语法

SET子句

SET子句语法

WHERE子句

像SQL一样,Neo4j CQL在CQL MATCH命令中提供了WHERE子句来过滤MATCH查询的结果。

简单WHERE子句语法

sql 复制代码
WHERE <condition>

复杂WHERE子句语法

sql 复制代码
WHERE <condition> <boolean-operator> <condition>

<condition>语法:

sql 复制代码
<property-name> <comparison-operator> <value>

Neo4j 支持以下的比较运算符,在 Neo4j CQL WHERE 子句中使用来支持条件。

S.No. 布尔运算符 描述
1. = 它是Neo4j CQL"等于"运算符。
2. <> 它是一个Neo4j CQL"不等于"运算符。
3. < 它是一个Neo4j CQL"小于"运算符。
4. > 它是一个Neo4j CQL"大于"运算符。
5. <= 它是一个Neo4j CQL"小于或等于"运算符。
6. >= 它是一个Neo4j CQL"大于或等于"运算符。

示例:

没用WHERE子句之前

用了WHERE子句之后,我们可以精准的搜索自己想要的内容

DELETE删除

Neo4j使用CQL DELETE子句

  • 删除节点。
  • 删除节点及相关节点和关系。

删除节点

通过使用此命令,我们可以从数据库永久删除节点及其关联的属性。

DELETE节点子句语法

sql 复制代码
DELETE <node-name-list>
S.No. 语法元素 描述
1. DELETE 它是一个Neo4j CQL关键字。
2. <node-name-list> 它是一个要从数据库中删除的节点名称列表。

注意 -

我们应该使用逗号(,)运算符来分隔节点名。

示例:

使用"DELETE n"命令删除Person节点

例如:

此示例演示如何从数据库永久删除节点及其关联节点和关系。

使用DELETE删除节点及其关联节点和关系

删除之后

REMOVE删除

有时基于我们的客户端要求,我们需要向现有节点或关系添加或删除属性。

我们使用Neo4j CQL SET子句向现有节点或关系添加新属性。

我们使用Neo4j CQL REMOVE子句来删除节点或关系的现有属性。

Neo4j CQL REMOVE命令用于

  • 删除节点或关系的标签
  • 删除节点或关系的属性

Neo4j CQL DELETE和REMOVE命令之间的主要区别 -

  • DELETE操作用于删除节点和关联关系。
  • REMOVE操作用于删除标签和属性。

Neo4j CQL DELETE和REMOVE命令之间的相似性 -

  • 这两个命令不应单独使用。
  • 两个命令都应该与MATCH命令一起使用。

删除节点/关系的属性

我们可以使用相同的语法从数据库中永久删除节点或关系的属性或属性列表。

REMOVE属性子句语法

sql 复制代码
REMOVE <property-name-list>

注意

  • 我们应该使用逗号(,)运算符来分隔标签名称列表。
  • 我们应该使用dot(。)运算符来分隔节点名称和标签名称。

示例:

我们可以看到book有id,pages,price,title四个属性

REMOVE book.price属性后,我们可以看到只剩下id,pages,title三个属性了

SET子句

有时,根据我们的客户端要求,我们需要向现有节点或关系添加新属性。

要做到这一点,Neo4j CQL 提供了一个SET子句。

Neo4j CQL 已提供 SET 子句来执行以下操作。

  • 向现有节点或关系添加新属性
  • 添加或更新属性值

SET子句语法

sql 复制代码
SET  <property-name-list>

使用SET子句将book的name属性加入book节点中

总结:本文简单介绍了Neo4j中的WHERE子句,DELETE子句,REMOVE子句,SET子句的用法

相关推荐
重生之小比特40 分钟前
【C++进阶】02 Linux基本指令
java·数据库·c++
Omics Pro41 分钟前
00后大3休学创业!AI虚拟细胞
大数据·数据库·人工智能·算法·机器学习·自然语言处理
梦想画家1 小时前
SQLMesh 模型类型详解(一):EMBEDDED——不建表的共享逻辑
数据库·数据挖掘·sqlmesh
ao-weilai1 小时前
MySQL数据库:数据类型
android·数据库·mysql
梦想画家1 小时前
SQLMesh 模型类型详解(三):MANAGED——把数据刷新外包给引擎
数据库·数据开发·sqlmesh
DingYuan1011 小时前
Django模板继承
数据库·sqlite
Mortalbreeze1 小时前
MySQL 基础篇(四):表的约束
linux·服务器·数据库·mysql
阳光九叶草LXGZXJ1 小时前
达梦数据库-学习-71-存过执行过程中重建存过影响验证
linux·运维·数据库·sql·学习
傲世仙尊1 小时前
MySQL上手-库与表的操作编码校验集与备份还原
数据库·mysql
志栋智能3 小时前
安全超自动化如何支持快速安全扩容?
运维·服务器·数据库·架构·自动化