Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从mysql查询中的两个表返回带有计数的数据_Mysql_Count - Fatal编程技术网

从mysql查询中的两个表返回带有计数的数据

从mysql查询中的两个表返回带有计数的数据,mysql,count,Mysql,Count,我的数据库中有两个表;小组和成员。 组有以下列:id、名称、描述、所有者id、学校id 成员有以下列:id、用户id、组id 我想返回组中的所有记录,在每一行上,它应该对members表进行计数,以确定每个组有多少成员 所以我的最终结果应该是这样的: id、名称、描述、所有者id、学校id、计数(来自成员表) 我一直在尝试,但有时当我只有2个组但有3个成员时,我会返回5行,而不是2行。执行此操作的标准方法是使用COUNT()、左连接和分组方式: SELECT g.*, COUNT(m.id) a

我的数据库中有两个表;小组和成员。 组有以下列:id、名称、描述、所有者id、学校id 成员有以下列:id、用户id、组id

我想返回组中的所有记录,在每一行上,它应该对members表进行计数,以确定每个组有多少成员

所以我的最终结果应该是这样的: id、名称、描述、所有者id、学校id、计数(来自成员表)


我一直在尝试,但有时当我只有2个组但有3个成员时,我会返回5行,而不是2行。

执行此操作的标准方法是使用
COUNT()
、左连接
分组方式

SELECT g.*, COUNT(m.id) as member_count
FROM groups g
LEFT JOIN members m
ON m.group_id = g.id
GROUP BY g.id
为了提高性能,请确保在
成员.组id
上有索引