0
我已经设置节点的最高计数:(u:User)-[:OWN]->(p:Product)
暗号发现用户(S)与产品
我需要找出谁拥有最多的产品的用户(一个或多个)。
我可以用接近:
MATCH (u:User)-[r]->(p:Product)
RETURN u.value as user, count(p.value) as Pcount
order by Pcount desc
limit 3
user cntProduct
Sammy 16
Bob 16
jo 12
但我想只返回“萨米”和“鲍勃”。所以限制不是一个好的选择,因为我不知道有多少用户会符合条件。
任何想法如何做到这一点?
谢谢布鲁诺;这很好用!非常聪明。 (与此同时,我想出了创建用户存储节点集合以及他们拥有的产品数量的想法。 MATCH(u:User) - [:OWN] - >(p:Product) with u.value作为用户,计数(p.value)作为cnt_prod MERGE(TOT:总{U:用户,TOT:cnt_prod}); 然后 匹配(T:总) 返回t.cnt_prod为最大,作为用户收集(t.user) 通过Max desc 排序1;这个工程但不是很好的解决方案 – Rachel