Cypher:为特定类型的每个节点获取 n 个相邻节点
Cypher: Getting n neighboring Nodes for each Node of certain type
我正在使用 Neo4j 服务器 4.2.5。
我想要 运行 我的查询的模式如下所示:
(Artist)-[similar_to {score: <float>}]->(Artist)
现在我要做的是获取每个艺术家得分最高的 5 个 [similar_to]
关系。
我试过使用 Neo4j 的 collect()
函数将所有艺术家收集到一个列表中,然后使用 UNWIND
对其进行迭代。遗憾的是,LIMIT
子句似乎限制了返回记录的总数,而不是每次迭代返回的记录数。
如有任何帮助,我们将不胜感激。
提前致谢
要获得得分最高的 5 个 rel,应该这样做。
MATCH (n:Artist)-[r:similar_to]->(:Artist)
WITH n,r
ORDER BY r.score DESC
RETURN n, COLLECT(r)[..5] AS relsWithHighestScores
我正在使用 Neo4j 服务器 4.2.5。
我想要 运行 我的查询的模式如下所示:
(Artist)-[similar_to {score: <float>}]->(Artist)
现在我要做的是获取每个艺术家得分最高的 5 个 [similar_to]
关系。
我试过使用 Neo4j 的 collect()
函数将所有艺术家收集到一个列表中,然后使用 UNWIND
对其进行迭代。遗憾的是,LIMIT
子句似乎限制了返回记录的总数,而不是每次迭代返回的记录数。
如有任何帮助,我们将不胜感激。
提前致谢
要获得得分最高的 5 个 rel,应该这样做。
MATCH (n:Artist)-[r:similar_to]->(:Artist)
WITH n,r
ORDER BY r.score DESC
RETURN n, COLLECT(r)[..5] AS relsWithHighestScores