2013-09-05 30 views
1

我有一个复杂的查询,带有多个'with'子句。我需要其中一场比赛是完全可选的。例如:有没有办法让整场比赛为可选?

m-[:LOVES]->f-[:FATHERED]->d-[:SISTER_OF]-s collect(d) as daughters 

我需要d,如果其他所有的关系是真实的只能返回,但生女儿是空的可能性。现在,没有任何部分是可选的,我的整个查询返回空。

+0

你可以设置一个(小)示例数据上http://console.neo4j.org设置什么办法? – Edward

回答

0

尝试:

m-[:LOVES]->f-[:FATHERED]->d-[?:SISTER_OF]-s collect(d) as daughters 

如果不匹配,这将返回null为s

一般来说,我会的两场比赛,虽然分开:

MATCH m-[:LOVES]->f-[:FATHERED]->d 
WITH DISTINCT d 
MATCH d-[?:SISTER_OF]-s 
RETURN collect(d) as daughters