相关表的MySQL连接计数
我想计算一个项目中的成员数量,并将其与查询所有项目的结果结合起来 我曾经尝试过处理子查询和连接,但还没有达到我想要的效果 这是我的桌子: 项目相关表的MySQL连接计数,mysql,Mysql,我想计算一个项目中的成员数量,并将其与查询所有项目的结果结合起来 我曾经尝试过处理子查询和连接,但还没有达到我想要的效果 这是我的桌子: 项目 project_id | name | description | start_date | end_date 项目成员 user_id | project_id 例如,项目1有2个成员,项目2有5个成员 所需的查询输出: project_id | name | description | start_date | end_date | number
project_id | name | description | start_date | end_date
项目成员
user_id | project_id
例如,项目1有2个成员,项目2有5个成员
所需的查询输出:
project_id | name | description | start_date | end_date | number_of_members
---------------------------------------------------------------------------
1 | xxx | xxxxxxxxxxx | xxxxxxxxxx | xxxxxxxx | 2
2 | xxx | xxxxxxxxxxx | xxxxxxxxxx | xxxxxxxx | 5
非常感谢您的帮助,谢谢 从
project
中选择所需的列。计数(project\u members.user\u id)
将为您提供每个项目中的用户数,如果您执行左连接,如图所示
SELECT
project_id, name,
description,
start_date,
end_date,
COUNT( project_members.user_id ) AS number_of_members
FROM project
LEFT JOIN project_members ON
( project_members.project_id = project.project_id )
GROUP BY
project.project_id
到目前为止您尝试了什么?嗯,您的查询似乎只返回单个项目记录,并且“成员数”列包含项目成员表中的总行数,而不是与该项目关联的总用户数。对不起,我忘记了GROUP BY
子句。我已经编辑了我的答案。非常感谢!你似乎回答了我所有的问题:P