如何在 Neo4J 中显示节点之间的所有关系?

时间:2021-03-04 11:15:11

标签: neo4j cypher

假设我使用 Cypher 从 Neo4J 3.3.9 数据库中提取节点列表,如下所示:

MATCH (c:Concept)-[:BY]->(u:User{uid:'16c01100-aa92-11e3-a3f6-35e25c9775ff'}) 
RETURN DISTINCT c;

然后我如何以最有效的方式显示这些节点之间的所有关系?

目前,在我的数据库结构中,Concept 类型的节点与 :TO 类型的关系链接。

当我在 Neo4J 浏览器中进行此类查询时,提取的节点之间的连接会自动显示,那么我如何在请求中执行相同的操作?

我尝试过这样的事情:

MATCH (c:Concept)-[:BY]->(u:User{uid:'16c01100-aa92-11e3-a3f6-35e25c9775ff'}) 
WITH DISTINCT c 
MATCH (u:User{uid:'16c01100-aa92-11e3-a3f6-35e25c9775ff'})<-[:BY]-(con:Concept)-[rel:TO]->(c) 
RETURN DISTINCT rel limit 10;

但这太慢了,而且会导致我的数据库停顿(我有大约 10000 个 c 节点,因此关系的数量达到了数百个。

什么是更有效的请求?

0 个答案:

没有答案