我正在尝试使用以下密码从多个相关节点检索相关数据:
Match (n {email:{paramEmail}})-[*..3]-(m) Return n,m",
{ paramEmail: email})
问题是如果还没有现有的关系,那么我会返回零行...虽然用户(n)存在,但此时没有找到关系。我仍然需要来自user(n)节点的属性,所以我必须单独调用。是否存在即使与m没有关系也会返回n的查询?
答案 0 :(得分:1)
是的,先将用户与电子邮件进行匹配,然后再使用OPTIONAL MATCH:
MATCH (n {email:{paramEmail}})
OPTIONAL MATCH (n)-[*..3]-(m) Return n,m
另外,我建议您在节点上使用标签。这样你就可以通过他们的电子邮件快速查找:用户(在创建索引后:用户(电子邮件))。现在,查询必须扫描图表的所有节点,以查找具有给定电子邮件参数的节点。