Neo4j 版本4 新特性介绍 - Cypher [1] CALL 子查询

Neo4j 版本4中添加了很多重要的改进和新特性。我们会在接下来几个月中陆续介绍这些新特性。先从Cypher开始。

关于CALL的完整使用方法请参见:https://neo4j.com/docs/cypher-manual/current/clauses/call-subquery/ 。

1. 介绍

Cypher 版本4中增加的CALL命令允许执行子查询,即其他查询内部的查询。 子查询允许组合查询,这在使用UNION或聚合时特别有用。

子查询为每个传入的输入行评估并执行,并且该子查询可以产生任意数量的输出行。 然后,将每个输出行与输入行合并以构建子查询的结果。 这意味着子查询将影响行数。 如果子查询不返回任何行,则子查询后将没有可用的行。

对于允许哪些查询作为子查询以及它们与父查询的交互方式,存在一些限制:

  • 子查询必须以RETURN子句结尾。
  • 子查询仅在显式导入的情况下才引用父查询中的变量。
  • 子查询不能返回与父查询中名称相同的变量。
  • 从子查询返回的所有变量随后都可以在父查询中使用。

我们将用下图作为例子说明:

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值