Neo4j数据库(二)

发布于:2024-04-24 ⋅ 阅读:(23) ⋅ 点赞:(0)

目录

WHERE子句

简单WHERE子句语法

复杂WHERE子句语法

 DELETE删除

删除节点 

DELETE节点子句语法

 REMOVE删除

删除节点/关系的属性

REMOVE属性子句语法

 SET子句

SET子句语法

WHERE子句

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

简单WHERE子句语法

WHERE <condition>

复杂WHERE子句语法

WHERE <condition> <boolean-operator> <condition>

<condition>语法:

<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节点子句语法

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属性子句语法

REMOVE <property-name-list>

注意 

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

示例:

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

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

 

 SET子句

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

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

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

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

SET子句语法

SET  <property-name-list>

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

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