0

如果我想找到用户数超过平均用户数的组,我添加了 where 子句,但我们不能在 where 中使用聚合......这是我的密码查询:

params.put("query", "name:*");
ExecutionResult result = engine.execute( "start n=node:groups({query}) 
match n<-[:Members_In]-x 
with n,count(distinct x) as numberOfUsers
where numOfUsers>avg(numOfUsers) 
return  n.name,numOfUsers ", params );

n是组名,x 是每个组的用户。如何获取组用户的平均数量,然后返回具有更多用户的组?谢谢。

4

1 回答 1

0

尝试使用 WITH,例如

start n=node(*) 
match n<-[:Members_In]-x 
with n, count(distinct x) as countOfUsers
with n, avg(countOfUsers) as avg 
where avg<3 
return  n.name, avg

例如http://tinyurl.com/czkpmws

于 2012-12-06T10:01:30.443 回答