一个字符与数字混合排序的问题

       在一次工作中,需要对字符型的一个属性排序,该属性中有部分数字字符,如下情况:

需要将该属性进行排序,已达到如下效果:

 

  使用了SQL SERVER自带的函数解决:

select * into #tempqk03
from (
select '11' as id
union select '3'
union select '5'
union select 'C'
union select 'B'
union select 'A'
) a

select *
from #tempqk03
order by (case when IsNumeric(id)=1 then convert(int,id) else ASCII(id) end)

   

原文地址:https://www.cnblogs.com/qiaokai/p/1708872.html