首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

排序的解法

2012-02-17 
求一个排序的解法,高手请进我有数据如下code14804F34A80A5A26A20我想要得到如下结果codeAA11344A4F5620808

求一个排序的解法,高手请进
我有数据如下

code

1
4
80
4F
3
4A
80A
5
A2
6
A
20

我想要得到如下结果
code
A
A1
1
3
4
4A
4F
5
6
20
80
80A

请各位帮忙,感激不尽

[解决办法]
declare @t table(code varchar(10))
insert @t select '1 '
insert @t select '4 '
insert @t select '80 '
insert @t select '4F '
insert @t select '3 '
insert @t select '4A '
insert @t select '80A '
insert @t select '5 '
insert @t select 'A2 '
insert @t select '6 '
insert @t select 'A '
insert @t select '20 '
select * from @t order by left(code,1)
[解决办法]
如果只有在首尾有一个字母,借用lxzm1001(*~悠悠蓝星梦~*) 的数据
select * from @t order by
(case when ascii(left(code,1))> 59 then '0 ' else right( '0000 '+(case when ascii(right(code,1))> 59 then left(code,len(code)-1) else code end),4) end),code

热点排行