以下查询返回试图发送的包含链接或附件但未能传递给收件人的电子邮件的节点和关系。
MATCH (s:Sender)-[:ATTEMPTED]->(x)-[:FAILED_TO]->(r:Recipient)
WHERE x:Link OR x:Attachment
return s,x,r
我想对此进行修改,以便可以通过添加类似的内容来说出链中超过3个收件人的位置:
WITH a, COLLECT(path) AS paths
WHERE SIZE(paths) > 3
RETURN paths
也许是这样?
MATCH (s:Sender)-[:ATTEMPTED]->(x)
WHERE size((x)-[:FAILED_TO]->()) > 3 AND (x:Link OR x:Attachment)
MATCH (x)-[:FAILED_TO]->(r:Recipient)
return s,x,r
因此,您首先查询具有3个以上FAILED_TO关系的x个节点。找到他们之后,您将搜索他们的收件人。