日期:2014-05-17  浏览次数:20390 次

SQLServer怎么生成这样的连续号
怎么才能够生成这样的一列呢,这列的数据是下面这样的
00
01
02
03
04
05
06
07
08
09
0A
0B

0X
0Y
0Z
10
11
12
:
1Z
20
:
9Z
A0
:
XX


也就是说各位先1到9,再加一的话就是A一直到Z,然后进到十位,相当于不是十进制也不是二进制,而是36进制




------解决方案--------------------
create table #tb (a1 varchar (2))
insert into #tb values(0)
insert into #tb values(1)
insert into #tb values(2)
insert into #tb values(3)
insert into #tb values(4)
insert into #tb values(5)
insert into #tb values(6)
insert into #tb values(7)
insert into #tb values(8)
insert into #tb values(9)
insert into #tb values('a')
insert into #tb values('b')
insert into #tb values('c')
insert into #tb values('d')
insert into #tb values('e')
insert into #tb values('f')
insert into #tb values('g')
insert into #tb values('h')
insert into #tb values('i')
insert into #tb values('j')
insert into #tb values('k')
insert into #tb values('l')
insert into #tb values('m')
insert into #tb values('n')
insert into #tb values('o')
insert into #tb values('p')
insert into #tb values('q')
insert into #tb values('r')
insert into #tb values('s')
insert into #tb values('t')
insert into #tb values('u')
insert into #tb values('v')
insert into #tb values('w')
insert into #tb values('x')
insert into #tb values('y')
insert into #tb values('z')

select *
from (
select a.a1+b.a1 as bb
from #tb a ,#tb b
)t
order by bb

------解决方案--------------------

with a1 as