首页 > 解决方案 > Cypher 链查询和剪枝

问题描述

我有一个需要修剪的复杂密码查询。

这是一个简单的例子

MATCH (n0) WHERE ID(n0) = 50
CALL {
    WITH n0
    MATCH (n0)-[r0*1]-(n1)
    RETURN n1 AS ns, r0 AS rs LIMIT 5
UNION ALL
    MATCH (n1)-[r1*1]-(n2)
    RETURN n2 AS ns, r1 AS rs LIMIT 5
}
RETURN collect(ns)+n0 AS nss

在子查询中执行第一个 match( MATCH (n0)-[r0*1]-(n1)) 并返回后,我想将n1第一个 match 返回的结果作为第二个 match( MATCH (n1)-[r1*1]-(n2))的起始节点

但是在第二场比赛中,无法获得第一场比赛返回的结果。

标签: cypher

解决方案


推荐阅读