delete from ac31
where aac310 not in
( select max310 from
( select max(aac310) as max310
from ac31
group by aac001
)b
);
解析:由内而外看,最里层select语句以aac001字段分组,从ac31表中筛选数据,取aac310列值较大者,取别名max310。
中间层select语句,筛选出max310。
最外层select语句,将ac31表中aac310字段不在max310中的行删掉,即删除aac310中较小的值。
参考文献:https://blog.csdn.net/zhanghua0324/article/details/80757327