【发布时间】:2014-03-27 11:06:52
【问题描述】:
为了限制通过 Neo4j 图数据库的遍历,我正在从子图中收集分数。想象一下(简化)
MATCH (a)-[:r1 {prop1:123}]->()-[]->()-[]->()-[]->(b {prop2:456})
WITH b,b.prop2*r1.prop1 as score ORDER BY score DESC LIMIT 10
WITH COLLECT ([b,score]) AS bscore
到目前为止,一切都很好。为了避免长时间遍历,我想将下一个匹配限制为存储在 bscore 中的节点 b 并将 bscore[1] 中的分数相加,但我找不到正确的语法。甚至想知道在密码中是否有可能。从概念上讲,我想这样做:
MATCH bscore[0]-[:r2]->(c)
RETURN c, SUM(bscore[1])
高度赞赏任何提示/指针。
【问题讨论】:
标签: collections neo4j match cypher