在Neo4j浏览器查询中仅显示特定的关系类型

12

我有一个简单的Neo4j图形数据库,是在尝试为新应用程序建模时创建的。当我运行以下查询时,我得到了我所期望的节点,但我还得到了更多意料之外的关系:

MATCH (o:Office)-[r:REPORTS_VARIABLE_TO]->() 
RETURN o,r

以下是结果的外观:

Graph Query Results

由于我特别请求与[:REPORTS_VARIABLE_TO]匹配的内容,因此我期望在结果中仅看到该关系。 但是,实际上我看到了任何匹配节点之间存在的所有关系(如图像底部所示)。

有没有办法过滤掉那些不是我要找的类型的关系?

4个回答

10

对于最新版本(例如3.2、3.3),"自动补全" 切换已移至浏览器设置中,并更名为“连接所有结果”。如果选中,它将连接节点及其所有关系。否则,你只能看到符合过滤条件的关系。


2
从3.2.5版本开始,选项现在是“连接结果节点”。不过我认为行为有所不同。 - gunner_dev
我不知道之前的行为如何,但是目前如果您取消选中此选项,则不会出现任何关系...甚至您指定的关系也不会出现。也许有一种特定(且未记录的)方式需要指定才能在这种情况下显示。 - Aaron Bramson
使用 RETURN node, r 对我有效。 - stellasia
1
@AaronBramson 我发现如果未勾选“连接结果节点”,我现在必须返回关系节点。 - Douglas Wiley

9
所以,正如Nicole White所指出的那样,答案是在Neo4j可视化工具中关闭“自动完成”切换(位于下图中右下角,用红线圈出)。
这将导致应用程序不再显示所显示/选择节点之间的所有关系,而仅显示查询中命名的关系和节点,如下所示:

enter image description here


4
我相信这只是后端可视化功能的一个特点,它将在屏幕上显示任意两个节点之间的所有关系(请注意,它还会显示目标节点,即使您没有在返回语句中请求它们)。
如果您查看原始查询结果,您只会得到指定的关系类型。
简而言之,您的查询完全有效和正确;这只是Neo4j管理工具向您展示的一个技巧。

4
答案就是在浏览器中关闭“自动完成”选项。您会在窗口右下角看到它。 - Nicole White
9
我正在使用neo4j浏览器的3.0.1版本,但没有自动完成切换。我查看了所有设置,无法找到如何关闭它。 - James

4
使用Neo4j Desktop 1.3.8和Neo4j浏览器时,您需要取消勾选"连接结果节点"设置。
  1. 打开您的数据库的Neo4j浏览器。
  2. 点击“浏览器设置”齿轮图标。
  3. 滚动到底部,取消勾选“连接结果节点”。
  4. 在浏览器中重新运行您的查询。

Neo4j Desktop 1.3.8 Settings


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接