Cypher临时关系

时间:2014-05-14 03:43:49

标签: neo4j cypher

我试图将路径组合/合并为新关系。问题是我对存储它不感兴趣,而是通过密码查询返回它。

让我说我有这样的事情:

(a)-[:CALLS_METHOD]->(b)-[:RETURNS_TYPE]->(c)

如何创建像这样的临时关系:

(a)-[:DEPENDS_ON]->(c)

仅针对特定查询的结果,以便我不必存储它。因为我真的只对从ac的依赖感兴趣,而不是关于该依赖的详细信息。

1 个答案:

答案 0 :(得分:1)

您无法从不存在的数据库返回关系。查询的目的是返回确实存在的东西。

也许您感兴趣的是推断对,而不是关系。类似的东西:

MATCH (a)-[r:CALLS_METHOD|RETURNS_TYPE*]->(b)
RETURN a, "depends on", b

您的另一种选择是实现/保存关系,然后查询它:

MATCH (a)-[r:CALLS_METHOD|RETURNS_TYPE*]->(b)
CREATE a-[newRel:DEPENDS_ON]->b
RETURN newRel;

但这有创造它的副作用。