在MySQL中连接表和聚合数据?
我有两张桌子。成员及其项目。我需要提取所有用户,以及他们的项目数量,按项目数量排序 表:在MySQL中连接表和聚合数据?,mysql,Mysql,我有两张桌子。成员及其项目。我需要提取所有用户,以及他们的项目数量,按项目数量排序 表:用户: id | username | email | password | reg_date 表:项目: id | title | descr | autor 对于连接: projects.autor = users.id SELECT users.id, users.username, COUNT(projects.id) AS `num_projects` FROM user
用户
:
id | username | email | password | reg_date
表:项目
:
id | title | descr | autor
对于连接:
projects.autor = users.id
SELECT
users.id,
users.username,
COUNT(projects.id) AS `num_projects`
FROM
users
LEFT OUTER JOIN
projects
ON
projects.autor = users.id
GROUP BY
users.id
ORDER BY
num_projects DESC
SELECT u.id AS id, u.username AS username, u.email AS email, u.password AS password, u.reg_date AS reg_date, COUNT(p.id) AS projects_count
FROM users u
LEFT OUTER JOIN projects p ON p.autor = u.id
GROUP BY u.id
ORDER BY projects_count DESC