Neo4j CQL -(16)- 合并

Neo4j使用CQL MERGE命令 -

  • 创建节点,关系和属性
  • 为从数据库检索数据

MERGE命令是CREATE命令和MATCH命令的组合。

MERGE = CREATE + MATCH

Neo4j CQL MERGE命令在图中搜索给定模式,如果存在,则返回结果

如果它不存在于图中,则它创建新的节点/关系并返回结果。

MERGE语法

MERGE (<node-name>:<label-name>
{
   <Property1-name>:<Pro<rty1-Value>
   .....
   <Propertyn-name>:<Propertyn-Value>
})

语法说明:
这里写图片描述

注意 -

Neo4j CQL MERGE命令语法与CQL CREATE命令类似。

我们将使用这两个命令执行以下操作 -

  • 创建具有一个属性的配置文件节点:Id,名称

  • 创建具有相同属性的同一个Profile节点:Id,Name

  • 检索所有Profile节点详细信息并观察结果


CREATE示例

示例:此示例通过使用CREATE,MATCH和RETURN命令创建Google+个人资料,执行上述所有操作。

步骤1 -打开Neo4j数据浏览器
步骤2 -在数据浏览器上键入以下命令
操作(1)创建一个Profile节点

CREATE (gp1:GoogleProfile1 {Id: 201401, Name:"Apple"})

操作(2):创建具有相同属性的同一个Profile节点:Id,Name。

CREATE (gp1:GoogleProfile1 {Id: 201401, Name:"Apple"})

操作(3):检索所有Profile节点详细信息并观察结果。

MATCH  (gp1:GoogleProfile1) 
RETURN gp1.Id,gp1.Name

这里写图片描述


如果我们观察到上面的查询结果,它显示2行重复的值。

CQL CREATE命令检查此节点是否可用,它只是在数据库中创建新节点。
通过观察这些结果,我们可以说CREATE命令总是向数据库添加新的节点。

MERGE示例

示例:通过使用MERGE和RETURN命令创建Google+个人资料,执行相同的上述操作。

步骤1 -打开Neo4j数据浏览器
步骤2 -在数据浏览器上键入以下命令
操作(1):创建一个Profile节点

MERGE (gp2:GoogleProfile3{ Id: 201402,Name:"Nokia"})

操作(2):创建具有相同属性的同一个Profile节点:Id,Name。

MERGE (gp2:GoogleProfile3{ Id: 201402,Name:"Nokia"})

操作(3):检索所有Profile节点详细信息并观察结果

MATCH  (gp3:GoogleProfile1) 
RETURN gp3.Id,gp3.Name

结果显示:

这里写图片描述


如果我们观察上面的查询结果,它只显示一行,因为CQL MERGE命令检查该节点在数据库中是否可用。 如果它不存在,它创建新节点。 否则,它不创建新的。

通过观察这些结果,我们可以说,CQL MERGE命令将新的节点添加到数据库,只有当它不存在。

本文参考:https://www.w3cschool.cn/neo4j/neo4j_cql_merge.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Will-kkc

您的鼓励将成为我继续写作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值