【发布时间】:2020-02-06 15:19:12
【问题描述】:
我有以下neo4j结构:
:Label1 -[:rel-label-1]- :Label2
It may happen that :Label1 -- :Label3
And sometime :Label2 -[:rel-label-2]- :Label3
我想获取如下表结构的数据
| LABEL1 | LABEL2 |
|--------|--------|
但是这样
如果没有来自 Label2 节点的出站 :rel-label-2, 表中Lable 3为null,Label2节点只会出现在一行
和
如果没有来自 Label3 节点的入站 :rel-label-2, 表中Lable 2为空,Label3节点只会出现在一行
现在我只能根据结构中第一行的匹配生成笛卡尔积:
MATCH(n:Label1)--(:rel-label-1)--(z1:Label2)
Followed by the 2 optional Matches to retrieve :Label3 and :rel-label-2
【问题讨论】:
-
你能澄清你的 2 个
IF声明吗?也许用一些带注释的伪代码来写它们? -
根据要求,cybersam我添加了一个例子。