如何在Cypher查询中返回关系的终端节点?

时间:2012-04-08 13:37:18

标签: neo4j cypher

在Cypher-Query之后,返回匹配关系索引的所有关系:

start r=relationship:concept_contained_in_report('concept_id:2') return r

如何返回这些关系的所有终端节点而不是关系本身?

我希望像

这样的东西
 start r=relationship:concept_contained_in_report('concept_id:2') return r.end

但是这不起作用,因为end(endnode)不是关系的属性。

由于 约尔格

2 个答案:

答案 0 :(得分:2)

你可以尝试

start r=relationship:concept_contained_in_report('concept_id:2')
match ()-[r]->endNode
return endNode

基本上,将关系与其开头和结尾相匹配。你不关心开头,所以不要给它分配一个标识符。为终端节点分配标识符并将其返回。

答案 1 :(得分:1)

或在Neo4j 2.0+中,您也可以尝试以下代码:

start r=relationship:concept_contained_in_report('concept_id:2')
return endNode(r) as eNode

它们提供了一个非常方便的功能,呃。