如何在密码中包含失败的匹配值



我正在尝试为每个人口返回一个值,无论人口是否连接到节点。 如果种群和等位基因之间没有连接,它应该只返回一个 NULL

我尝试使用可选匹配,但这只返回所有连接的节点,而没有未连接节点的值。

这是我目前实现它的尝试:

MATCH (p:Population)
with p
OPTIONAL MATCH (p)<-[s:has_support]-(a:Allele)
RETURN a, count(p.name) limit 25

我使用 count 作为快速检查它是否总是返回正确数量的值,它应该始终返回与图形数据库中的人口节点相同数量的值。

我如何实现这一点?

亲切的问候, 朱利安

我发现了这个问题,collectcount忽略空值。为了解决这个问题,我使用 COALESCE 函数将 null 设置为 0。

MATCH (p:Population) match (a:Allele)
with a, p
OPTIONAL MATCH (a)-[s:has_support]->(p)
return a, collect(COALESCE(s.value, 0)), collect(p.name) limit 25

最新更新