Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.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 获取具有相同ID列的特定计数值_Mysql_Sql_Request - Fatal编程技术网

Mysql 获取具有相同ID列的特定计数值

Mysql 获取具有相同ID列的特定计数值,mysql,sql,request,Mysql,Sql,Request,我有这个疑问 SELECT * FROM classroom WHERE capacity > (SELECT COUNT(class_history.*) FROM classroom RIGHT JOIN class_history ON classroom.id_class = class_history.id_class GROUP BY class_history

我有这个疑问

SELECT * 
FROM classroom 
WHERE capacity > (SELECT COUNT(class_history.*) 
                  FROM classroom 
                  RIGHT JOIN class_history ON classroom.id_class = class_history.id_class 
                  GROUP BY class_history.id_class) 
ORDER BY id_class DESC
我想通过计算课堂历史记录得到课堂容量,与课堂id相同,有人能帮我查询吗

这样我就可以得到这样的回报

classroom 1 - capacity  (0/20)
classroom 2 - capacity  (2/20)
classroom 3 - capacity  (9/10)
这是截图

教室

班级历史记录


注意:如果容量已满,则它不会出现;如果容量未满,则无论其是否仍然为0,它都会出现。使用
左连接
,它应该可以解决您的问题

SELECT classroom.id_class, COUNT(class_history.id_class), capacity 
FROM classroom LEFT JOIN class_history
ON classroom.id_class = class_history.id_class
GROUP BY classroom.id_class
HAVING COUNT(class_history.id_class) < capacity
选择教室.id\u班级、计数(班级历史.id\u班级)、容量
从教室左边加入历史课
在教室上.id\u class=class\u history.id\u class
按教室分组
具有计数(class_history.id_class)<容量

可能有更详细的表结构?还有一些示例数据,您希望从中产生的结果将非常好。帮助我们帮助你。谢谢你的回复,这里我已经把screenshot@Khrisna,如果没有用,请告诉我。它可以用。谢谢。。但很抱歉,我忘了说,如果容量已满,那么它将不会显示,当容量仍然为0时,它将显示。所以当它满了的时候,它没有出现,如果没有满的话,它会出现哇,这很好:D,但是为什么空教室没有出现呢?你能帮我吗?现在它应该工作得很好,如果你喜欢答案,请接受。但是为什么空教室仍然没有显示出来?只有那间没有空的教室出现了