同意二楼,先用窗口函数row_number进行排序,再进行字段之间的连接 select concat_ws('-',a1.Id,a1.row_number) as Id, a1.Name from (select Id,Name, row_number() over (partition by Id) as row_number from a where Id <= 201)) a1 union all select Id,Name from a where Id >= 201 如果有更简单的方法请指教哈~