with table_t as(
select '供应商A' [供应商],'AA'[销售组]
union ALL
select '供应商A' [供应商],'BB'[销售组]
union ALL
select '供应商B' [供应商],'BB'[销售组]
union ALL
select '供应商B' [供应商],'CC'[销售组]
union ALL
select '供应商B' [供应商],'DD'[销售组]
)
SELECT * FROM (
SELECT *,ROW_NUMBER() OVER(PARTITION BY 供应商 ORDER BY (CASE WHEN 销售组='AA' THEN 0 WHEN 销售组='BB' THEN 1 WHEN 销售组='CC' THEN 2 WHEN 销售组='DD' THEN 3 ELSE 9999 END) ASC) [I] FROM table_t
) T WHERE T.I=1
