如何写一个从00到ZZ的序号?高手帮忙

mad2000 2010-07-02 09:54:01
要求是 两个字符 ,从 00-99-A0-A9-AA-B0-BB--------ZZ 。。。
...全文
308 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
mad2000 2010-07-02
  • 打赏
  • 举报
回复
有问题

feilniu 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 mad2000 的回复:]

引用 9 楼 feilniu 的回复:
从 00-99-A0-A9-AA-B0-BB--------ZZ
====
99之后为啥不是9A而是A0?
AA之后为啥不是AB而是B0?
什么规律?

是想要:00,...,0Z,10,...,1Z,... ...,Z0,...,ZZ
还是要:00,10,11,20,21,22,... ...,A0,...,AA,... ...,Z0,.……
[/Quote]


--第1个
;WITH CTE AS(
SELECT ch = CHAR(n) FROM dbo.Nums
WHERE n BETWEEN 0x30 AND 0x39
OR n BETWEEN 0x41 AND 0x5a
)
SELECT code = a.ch + b.ch
FROM CTE a
CROSS JOIN CTE b
--第2个
;WITH CTE AS(
SELECT ch = CHAR(n) FROM dbo.Nums
WHERE n BETWEEN 0x30 AND 0x39
OR n BETWEEN 0x41 AND 0x5a
)
SELECT code = a.ch + b.ch
FROM CTE a
INNER JOIN CTE b
ON a.ch <= b.ch
mad2000 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 feilniu 的回复:]
从 00-99-A0-A9-AA-B0-BB--------ZZ
====
99之后为啥不是9A而是A0?
AA之后为啥不是AB而是B0?
什么规律?

是想要:00,...,0Z,10,...,1Z,... ...,Z0,...,ZZ
还是要:00,10,11,20,21,22,... ...,A0,...,AA,... ...,Z0,...,ZZ

前者是:(0到Z) a C……
[/Quote]


第二个怎么写?
qqzhangmin520 2010-07-02
  • 打赏
  • 举报
回复
厉害啊
mad2000 2010-07-02
  • 打赏
  • 举报
回复
feilniu 说得是很有道理,可偏偏给我的就是这样啊
304的的哥 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 rmljoe 的回复:]
SQL code

select
a.aaa + b.aaa
from
(select char(number) as aaa from master..spt_values where type = 'p' and ((number between 48 and 57) or (number between 65 and 90))) a
,(select char(number) ……
[/Quote]

太强悍了,膜拜中!!!!!!!!!!!!!!!!
feixianxxx 2010-07-02
  • 打赏
  • 举报
回复
http://moodle.hsshn.pudong-edu.sh.cn/file.php/99/resource/ASCII.htm
这是ascii码表 对应需要的 用LS的方法吧
feilniu 2010-07-02
  • 打赏
  • 举报
回复
从 00-99-A0-A9-AA-B0-BB--------ZZ
====
99之后为啥不是9A而是A0?
AA之后为啥不是AB而是B0?
什么规律?

是想要:00,...,0Z,10,...,1Z,... ...,Z0,...,ZZ
还是要:00,10,11,20,21,22,... ...,A0,...,AA,... ...,Z0,...,ZZ

前者是:(0到Z) a CROSS JOIN (0到Z) b
后者是:(0到Z) a INNER JOIN (0到Z) b ON a.char <= b.char
jiangshun 2010-07-02
  • 打赏
  • 举报
回复
select flag=A+B from (select A=(char(number)) from spt_values where type='p'
and patindex('%[a-zA-A0-9]%',char(number))>0)A,
(select B=(char(number)) from spt_values where type='p'
and patindex('%[a-zA-A0-9]%',char(number))>0)B
rmljoe 2010-07-02
  • 打赏
  • 举报
回复

select
a.aaa + b.aaa
from
(select char(number) as aaa from master..spt_values where type = 'p' and ((number between 48 and 57) or (number between 65 and 90))) a
,(select char(number) as aaa from master..spt_values where type = 'p' and ((number between 48 and 57) or (number between 65 and 90))) b
order by a.aaa + b.aaa



/*
00
01
02
03
04
05
06
07
08
09
0A
0B
0C
0D
.
.
.
ZK
ZL
ZM
ZN
ZO
ZP
ZQ
ZR
ZS
ZT
ZU
ZV
ZW
ZX
ZY
ZZ

(1296 行受影响)
*/
mad2000 2010-07-02
  • 打赏
  • 举报
回复
我也不知道为什么要这样,老大的要求就是这样!!~
黄_瓜 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mad2000 的回复:]
一个自动增加的列啊!!
00
01
02
--
99
A0
A1
--
A9
--
AA
--
zz
[/Quote]
为啥要这样搞?好玩呀? 那这些列用完了怎么办?
mad2000 2010-07-02
  • 打赏
  • 举报
回复
一个自动增加的列啊!!
00
01
02
--
99
A0
A1
--
A9
--
AA
--
zz
guguda2008 2010-07-02
  • 打赏
  • 举报
回复
你这个有除了开头和结尾,中间有什么规律
幸运的意外 2010-07-02
  • 打赏
  • 举报
回复
没明白啥意思。
SQL_Hhy 2010-07-02
  • 打赏
  • 举报
回复

22,299

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧