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