学生、系 Order by both with condition

Student, Department Order by both with condition

我卡在查询中了,我的查询如下:

SELECT department_name AS 'Department Name', COUNT(*) AS 'No of Employees' FROM departments INNER JOIN employees ON employees.department_id = departments.department_id GROUP BY departments.department_id, department_name
ORDER BY COUNT(*) DESC;

此查询给我的结果如下附件

我现在想要的是,如果两个或多个系的学生人数相同,则按字母顺序对系进行排序。例如 "Purchasing" 和 "Finance" 应该按字母顺序排序。

您可以在以下 link 中尝试此查询:

Check your query here

这是您要找的吗?

    SELECT department_name AS 'Department Name', COUNT(*) AS 'No of Employees' 
    FROM departments INNER JOIN employees ON employees.department_id = departments.department_id GROUP BY departments.department_id, department_name
    ORDER BY department_name,COUNT(*) DESC;

这很简单。您可以按多列结果集排序,如下所示:

 SELECT department_name AS 'Department Name', COUNT(*) AS 'No of Employees'
 FROM departments INNER JOIN employees ON 
 employees.department_id = departments.department_id 
 GROUP BY departments.department_id, department_name
 ORDER BY COUNT(*) DESC, department_name Asc;

以下话题值得一读

SQL Multiple Column Ordering

希望这对您有所帮助:)