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子句的用法

相关推荐
多客:duokelijie26 分钟前
代练订单系统选型思路:跨品类游戏接入、订单分层管理、自动结算逻辑拆解!
数据库·mysql·微信小程序·前端框架·uni-app·php·持续部署
PingCAP27 分钟前
平凯星辰上榜!2026 年胡润全球独角兽企业
数据库
PingCAP29 分钟前
轨道交通 AFC 系统升级,平凯 Loop 把跨部门协同变成可追溯闭环
数据库
java_logo2 小时前
Docker 部署 CloudBeaver:轻松搭建网页数据库管理平台
数据库·docker·容器·数据库管理·dbeaver·轩辕镜像·cloudbeaver
李白客3 小时前
AI 数据库落地 NL2SQL:准确率卡在四成,问题在表注释不在模型
数据库
FluxDB3 小时前
FluxDB vs DBX vs DBeaver:GPUI、Tauri、Eclipse 三种技术栈实测
数据库·mysql
杨航 AI3 小时前
JEV的用法
java·前端·数据库
数据库小学妹4 小时前
MySQL分页结果不稳定:唯一键兜底与游标分页
数据库·mysql·dba
风翼靓崽4 小时前
mysql数据备份/恢复
数据库·mysql
贝锐5 小时前
金仓、达梦、TDSQL全适配:向日葵补齐信创数据库层远程运维能力
运维·数据库·信创