我试图创建两个可选匹配的联合(如下所示),而不是工会,我得到了两个交集。 我应该如何更改此查询以获取所需的联合?Cypher for neo4j
optional match (a:PA)-[r2:network*2]-(b:PA) where a.last_name='smith'
And Not (a:PA)-[:network]-(b:PA)
optional match (a:PA)-[r3:network*3]-(b:PA) where a.last_name='smith'
And Not (a:PA)-[:network]-(b:PA)
return b.first_name, count(r2), count(r3)
此图形数据库应该模仿社会network.Through出现作为第二学位我试图找到用户的(史密斯)网络中二度连接可选的第一个比赛的次数和计数连接在他的网络中。 第二场比赛对于第三度连线也是一样的。
但查询返回2个可选匹配的交集,而不是它们的联合即我得到的只有那些名称可以映射为2度以及3度连接的计数用户(史密斯)。
相反,我想获得所有二级和三级连接的名称以及计数。 如何修改此查询以获得所需的结果?