这个题是真实面试遇到的当时没答出来记录到这里。题目描述有一个订单表一个字段是订单号一个字段是员工号查询哪个员工的订单号最多思路按照员工号进行分组统计然后再进行订单数量逆序排选出最大的即可。但是这种方式无法选出并列第一名。SELECT 员工号, COUNT(订单号) AS 订单数量 FROM 订单表 GROUP BY 员工号 ORDER BY 订单数量 DESC LIMIT 1;思路内层按员工分组统计每个员工订单数再套一层先查出最大订单数最后筛选出 订单数 最大值 的所有员工SELECT emp_id, order_count FROM ( -- 1. 统计每个员工的订单数量 SELECT emp_id, COUNT(order_no) AS order_count FROM order_info GROUP BY emp_id ) t WHERE order_count ( -- 2. 查出最大的订单数量 SELECT MAX(cnt) FROM ( SELECT COUNT(order_no) AS cnt FROM order_info GROUP BY emp_id ) tmp );