【问题标题】:MySQL Count from one table, join to another tableMySQL 从一张表计数,加入另一张表
【发布时间】:2012-07-29 21:47:22
【问题描述】:

这就是我想要做的事情: 表 A 有用户登录记录 表B有用户信息

我想计算表 A 中每个用户的登录总数,然后将其加入表 B,所以我的结果类似于....

用户 1 名称:John 登录次数:15 次 用户 2 名称:Mary 登录次数:22 次​​p>

非常感谢任何帮助

【问题讨论】:

    标签: mysql join count


    【解决方案1】:

    你需要这样的东西:

    SELECT u.*, count(l.id) AS login_count
    FROM user s
    LEFT JOIN login l ON u.id = l.user_id
    GROUP login.id
    

    【讨论】:

      【解决方案2】:
      SELECT
          users.*,
          COUNT(user_logins.user_id) as login_count
      FROM users 
      LEFT JOIN user_logins ON user_logins.user_id = users.user_id
      GROUP BY users.user_id
      

      如果您不需要登录次数为 0 的用户,请从 LEFT JOIN 中删除 LEFT

      【讨论】:

      • 2 或 3,我不确定。 1-st 我添加了 LEFT/not LEFT 建议,然后我注意到我错过了GROUP BY users.user_id
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-23
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多