可选匹配在Neo4j 2.0.0中无法正常工作

时间:2014-01-27 12:13:46

标签: neo4j cypher

我的graphdb中有用户,他们投票给品牌。我有一个案例,我需要找到不投票任何品牌的用户。我准备了一个你可以玩的控制台视图。我需要在这个控制台示例中使用'Trinity'命名节点;

Console Example

尝试没有运气的可选比赛。

1 个答案:

答案 0 :(得分:5)

使用可选匹配的正确方法更麻烦(但可能更快):

MATCH (n:User)  
OPTIONAL MATCH (n)-[:Voted]->(brand) 
WITH n,brand 
WHERE brand IS NULL 
RETURN n, brand

由于WHERE属于optional match的内部(类似于sql join ON (...)),因此它可用于指定可选匹配将遵循的约束。

因此,如果您要过滤可选匹配的“结果”,则必须将其与WITH分开。