Neo在处理大量关系的聚合计算时似乎返回了不正确的值。 注意:我在所有查询中都使用Neo浏览器。
我先创建一些简单的样本数据:
CREATE (p:PERSON)
CREATE (e:EVENT)
WITH range(0, 100000) AS list, p, e
UNWIND list AS val
CREATE (p)-[:ATTENDED {val: val}]->(e)
然后运行我的聚合:
MATCH (:PERSON)-[a:ATTENDED]->(:EVENT)
RETURN avg(a.val)
我得到的值是7050.7...,而不是预期的50000。我还运行了
count
、min
和max
聚合函数,它们的结果都如预期一样(分别为100001、0、100000)。我的代码有问题吗?还是Neo浏览器存在某种限制?或者其他原因...?
注意: 如果我只创建到10000的范围,然后运行相同的查询:
...
WITH range(0, 10000) AS list, p, e
...
我从聚合计算中得到了预期值。