【发布时间】:2015-07-30 20:34:35
【问题描述】:
我有与类别和用户有关系的流,但这些关系是可选关系。所以流不应该总是与一个类别或用户相关,它可能只与一个类别或多个类别或用户相关。我的问题是我想加入两个处理所有这些情况的可选查询。下面的示例,行为如下,如果节点的类别和用户关系都存在,则它可以工作,但如果节点在示例中只有一个用户关系,则它不起作用。有什么想法吗?
MATCH (stream:Stream {id: "xyz123"})
MATCH (stream)-[:CONTAINS]->(categories)-[:CHILD_OF*0..50]->(subcats)<-[:PHOTO_OF]-(photo), (stream)<-[:PARTICIPANT_OF]-(users)<-[:OWNER]-(photo)
WHERE photo.is_private=false
return collect(photo.id) as photo_ids
如果用户和类别关系都存在,我需要的是两个匹配项的交集。如果仅存在类别或用户关系,则仅带来该关系的结果
【问题讨论】:
-
您的第一个
MATCH子句格式不正确。请修复。