【发布时间】:2017-02-22 19:38:03
【问题描述】:
我有一个用户表,其中包含 3 列,我试图对其进行计数,然后按 created_at 日期分组。
列:“created_at”、“answers_count”、“questions_count”
如何将这 3 个查询合并为一个,并将所有计数按相同的 created_at 日期分组?
这里有 3 个单独的查询:
-- daily new signups
SELECT date_trunc('day', users.created_at) AS signup_date, count(*) AS new_users
FROM users
GROUP BY signup_date
ORDER BY signup_date DESC;
-- new user answers_count by signup date
SELECT date_trunc('day', users.created_at) AS signup_date, count(*) AS answers_count
FROM users
WHERE users.answers_count > 0
GROUP BY signup_date
ORDER BY signup_date DESC;
-- new user questions_count by signup date
SELECT date_trunc('day', users.created_at) AS signup_date, count(*) AS qs_received
FROM users
WHERE users.questions_count > 0
GROUP BY signup_date
ORDER BY signup_date DESC;
【问题讨论】:
-
您正在使用哪个数据库..? mysql还是postgresql?
标签: mysql sql postgresql