【发布时间】:2020-09-20 19:32:39
【问题描述】:
我正在尝试编写一些 SQL 来了解每月平均参加的活动数量。
与会者
| id | user_id | event_id | created_at |
我试过了:
SELECT AVG(b.rcount) FROM (select count(*) as rcount FROM attendees GROUP BY attendees.user_id) as b;
但这会返回 5.77(这只是所有时间的平均值)。我正在尝试获得每月的平均值。
理想的结果是:
2020-01-01, 2.1
2020-01-02, 2.4
2020-01-03, 3.3
...
我也试过这个:
SELECT mnth, AVG(b.rcount) FROM (select date_trunc('month', created_at) as mnth, count(*) as rcount FROM attendees GROUP BY 1, 2) as b;
但是得到了:ERROR: aggregate functions are not allowed in GROUP BY
【问题讨论】:
标签: sql postgresql count average distinct