首页  >  问答  >  正文

MySQL:显示使用内部联接创建的行的每日计数?

我有一个用户和 user_data 表。我尝试按 created_at 显示注册量,并按当天的计数对其进行分组,并显示每天的记录,以便我可以看到用户注册量的增量。

user_data 是可选的,并且并不总是存在(但),但我只想计算确实有 user_data 行的行。

我正在运行此程序,但它只为每个用户注册返回 1 行,如何对日期进行分组?

SELECT COUNT(*), created_at, email 
FROM users 
INNER JOIN user_data  ON users.id = user_data.user_id
GROUP BY users.created_at, email

P粉692052513P粉692052513405 天前847

全部回复(1)我来回复

  • P粉334721359

    P粉3347213592023-09-11 10:52:33

    根据您的描述,您似乎想按日期显示用户注册计数并相应地对它们进行分组。为了更好地了解您的要求并提供更准确的指导,例如提供示例表和预期结果。

    这是修改后的查询:

    SELECT DATE(u.created_at) AS signup_date, COUNT(*) AS signups
    FROM users u
    INNER JOIN user_data ud ON u.id = ud.user_id
    GROUP BY signup_date
    ORDER BY signup_date ASC;SELECT DATE(u.created_at) AS signup_date, COUNT(*) AS signups
    FROM users u
    INNER JOIN user_data ud ON u.id = ud.user_id
    GROUP BY signup_date
    ORDER BY signup_date ASC;

    这将为您提供按日期划分的注册计数。

    回复
    0
  • 取消回复