MYSQL:如何从两个表中进行计数和分组,然后连接到第三个表

MYSQL:如何从两个表中进行计数和分组,然后连接到第三个表,mysql,Mysql,有人能帮我吗? 我想统计两个不超过一周的表(comments\u table和comment\u reply)中出现的所有“username”字段。得到结果后,我现在想从“users”表中获取每个用户名的“profile\u image” 注释\u表如下所示: 下面是评论回复表 评论\u回复如下: 通过编写以下查询,我已经完成了80%的工作: SELECT username, COUNT(*) AS total FROM ( SELECT username FROM comm

有人能帮我吗? 我想统计两个不超过一周的表(comments\u table和comment\u reply)中出现的所有“username”字段。得到结果后,我现在想从“users”表中获取每个用户名的“profile\u image”

注释\u表如下所示:

下面是评论回复表

评论\u回复如下:

通过编写以下查询,我已经完成了80%的工作:

    SELECT username, COUNT(*) AS total
FROM (
    SELECT username FROM comments_table WHERE date_time > NOW() - INTERVAL 1 WEEK
    UNION ALL
    SELECT username FROM comment_replies WHERE date_time > NOW() - INTERVAL 1 WEEK
) table1 
GROUP BY username ORDER BY total DESC
通过提供以下输出,它运行良好:

这里是我的问题:我想把这个结果加入到“users”表中,这样我就可以得到每个用户名的“profile\u image”。“用户”表的用户名列是唯一的列:

我知道我可以使用用户名栏加入,但我只是卡住了。请帮忙。
我已经搜索了Stock Overflow并找到了,但他们没有解决我的问题。

您只需要将用户表与查询连接起来:

SELECT u.username,u.profile_image,t.total
FROM `users` u
INNER JOIN (
  SELECT username, COUNT(*) AS total
  FROM (
    SELECT username FROM comments_table WHERE date_time > NOW() - INTERVAL 1 WEEK
    UNION ALL
    SELECT username FROM comment_replies WHERE date_time > NOW() - INTERVAL 1 WEEK
  ) table1 
  GROUP BY username) t
ON u.username=t.username
ORDER BY t.total;
我更正了关键字INNER的拼写