sql - 从一个表中获取所有条目以及这些条目在另一个表中的计数

标签 sql mysql

我有 3 个表:

  • 用户(id,姓名,...)
  • 项目(id,名称,......)
  • 下载(user_id、item_id、...)

我如何将所有用户与他们的下载次数汇总在一起?

最佳答案

How do I get all users together with the number of downloads they have?

使用:

SELECT u.name,
       COUNT(d.user_id) 'num_downloaded'
FROM USERS u
OIN DOWNLOADS d ON d.user_id = u.user_id
GROUP BY u.name

如果您想查看用户下载特定项目的次数:

SELECT u.name 'user_name',
       i.name 'item_name',
       COUNT(d.user_id) 'num_downloaded'
FROM USERS u
JOIN DOWNLOADS d ON d.user_id = u.user_id
JOIN ITEMS i ON i.item_id = d.item_id
GROUP BY u.name, i.name

关于sql - 从一个表中获取所有条目以及这些条目在另一个表中的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1857959/

相关文章:

sql - 在数据库查询或代码中操作数据

java - 我将如何在 Spring 数据存储库中编写 SELECT TOP 25 sql 查询

php - 用户和密码与数据库不匹配

mysql - laravel 高级连接 5 个表,其中 2 个表进行比较

java - 如何使用 java.sql.Date 从 DATETIME MySQL 中获取 TIME

sql - MSSQL : How to SELF JOIN on two columns with OR Operator

sql - 用于菜单系统的递归 SQL

单个查询中的 MySQL 多个计数

mysql - 获得最高分和胜利次数

php - 在进入 SQL 查询之前是否需要转义 $_SESSION ['username' ]?