1.分析
语句中的执行顺序:from--where--group by--having--select--order by,
from:需要从哪个数据表检索数据
where:过滤表中数据的条件
group by:如何将上面过滤出的数据分组
having:对上面已经分组的数据进行过滤的条件
select:查看结果集中的哪个列,或列的计算结果
order by :按照什么样的顺序来查看返回的数据

因此是先对emp_no分组,然后再查询最小的id,把不是最小id的删除即可。

2.代码

DELETE FROM titles_test
WHERE id NOT IN
(
    select * from 
    (
        SELECT MIN(id)
        FROM titles_test
        GROUP BY emp_no
    )as t1
)