在Neo4j查询中获得额外的关系

时间:2014-07-17 22:54:48

标签: graph neo4j cypher traversal

我是Neo4j的新手。 对于给定节点(例如,节点' n'),我试图找到图中所有其他依赖于它的节点。换句话说,在图中查找边缘指向节点的节点' n'。我正在使用以下查询获取正确的节点(让我们称之为c,d,e):

MATCH (depNode)-[r]->(n:AttributeNode)
WHERE n.name='testnode'
RETURN depNode

在原始图中,节点c和d也使用关系连接。在上面的查询结果中,我也收到了这种关系(c和d之间的边缘)。如何摆脱输出中的那个边缘?

2 个答案:

答案 0 :(得分:2)

如果我正确地得到您的问题,我认为您已经以表格形式获得了正确答案,但在可视化形式中,Neo4j显示了“额外边缘”。您应该检查表格形式并确认它是否正确显示了所需的输出(它可能是)。

这里发生的是Neo4j浏览器的默认工作方式。每当您尝试检索某些节点时,它也会显示节点之间的所有关系。如果您只想显示节点,则无法在当前版本的Neo4j浏览器中执行此操作。您必须在数据库中使用Gephi等可视化工具并相应地过滤结果。

答案 1 :(得分:1)

从Neo4j 2.2.0.RC1开始,您可以通过将 Autocomplete 设置为Off来停用正在使用的额外关系。切换显示在结果图的右下角,似乎会记住以后的请求。