Есть две таблицы:
Student_in_class имеет поля:
--id - номер записи
--class - идентификатор класса
--student - учащийся
Class имеет поля:
--id - идентификатор класса
--name - имя класса
Необходимо вывести заполненность классов в порядке убывания
Поля в результирующей таблице выбрать: name, count
Я написал такой запрос, который, вроде, показывает правильные данные, однако такое решение неверно:
SELECT name,
(SELECT COUNT(Class.name=Student_in_class.class) FROM Student_in_class
WHERE (Class.id = Student_in_class.class)) AS count
FROM Class ORDER BY count DESC
SELECT `name`, COUNT(`Student_in_class`.*) AS `count`
LEFT JOIN `Student_in_class` ON `Student_in_class`.`class` = `Class`.`id`
FROM `Class`
GROUP BY `Class`.`id`
ORDER BY `count` DESC