用ROW_NUMBER()就行select * from (
select t.* ,ROW_NUMBER() over (PARTITION BY t.zzyslxm ORDER by t.b )as num from
(select zzyslxm,hkxmmc,sum(hksl)as a,sum(hkxj)as b
from sap.v_hub_dwd_confirmation group by zzyslxm,hkxmmc order by sum(hkxj)) t ) d
where d.num <=10