Oracle字母+数字字段先按照字母排序 这是普通按照order by语句的结果 select dabm,damc,dabm bm from uf_bzjlb order by bm 想要变成A1,A2,A3… select dabm,damc,dabm bm from uf_bzjlb order by regexp_substr(bm, ‘^\D*’) nulls first,to_number(regexp_substr(bm, ‘\d+’)) 修改完执行结果是 大功告成!!!!