neo4j查找没有特定PARAMETERIZED关系的节点(路径)

时间:2015-12-07 22:19:34

标签: neo4j cypher

我想做this,但使用比较运算符的关系参数。

MATCH (a:Foo) WHERE not ((a)-[:has]->(:Bar)) RETURN a;

我可以添加内联参数化的相等比较,例如:

MATCH (a:Foo) WHERE not ((a)-[:has {this: 'works'}]->(:Bar)) RETURN a;

但不是> =,< =等。如果[:has]有一个属性effectiveEndDate并且我想返回(a:foo)没有任何活动关系,那么对用例的最佳解释是,根据关系的effectiveEndDate属性。

编辑澄清:

执行此操作的最佳方法是匹配所有ACTIVE关系(per:has.effectiveEndDate)...所以不活动/过期不匹配且不在此处发挥作用,然后不那些积极的关系。所以返回的(a:foo)只是非活动的那些。

1 个答案:

答案 0 :(得分:0)

也许我误解了您的问题,但您可以使用WHERE条款进行不等式比较:

MATCH (a:Foo)-[r:has]->(b:Bar)
WHERE r.effectiveEndData <= timestamp()
RETURN a,b