如何得到两位字母或数字的所有组合?

taoyb 2007-03-28 10:13:04
(A...Z)(0...9) 比如 AB、C1、45。。。
...全文
680 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qrj50000 2008-09-08
  • 打赏
  • 举报
回复
ding
taoyb 2007-03-28
  • 打赏
  • 举报
回复
declare @charSTR CHAR(36)
declare @i int
CREATE TABLE #TEMP01 (CODE CHAR(1))
set @i = 1
SET @CHARSTR='ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'

while @I<= 36
begin
INSERT #TEMP01 (CODE) VALUES(SUBSTRING(@CHARSTR,@I,1))
set @I=@I + 1

end

SELECT A.CODE CODE1,B.CODE CODE2
INTO #TEMP02
FROM #TEMP01 A,#TEMP01 B

SELECT CODE1+CODE2 CODE FROM #TEMP02

DROP TABLE #TEMP01
DROP TABLE #TEMP02
jackiecheng001 2007-03-28
  • 打赏
  • 举报
回复
declare @char varchar
declare @int int
declare @begin int
declare @end int
declare @i int
set @i = 1
set @char ='A'
set @int=1
set @begin =ascii(@char)
set @end = ascii('Z')
while @begin<= @end
begin
while @i<10
begin
print (char(str(@begin))+ str(@i))
set @i=@i +1
end
set @i=1
set @begin =@begin + 1
set @char = char(@begin)
end


然后在加上一部分 字母循环 和数字循环的
gc_ding 2007-03-28
  • 打赏
  • 举报
回复
大乌龟正解!
dawugui 2007-03-28
  • 打赏
  • 举报
回复
declare @s1 as varchar(26)
declare @s2 as varchar(10)
set @s1 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
set @s2 = '0123456789'
declare @i as int
declare @j as int
--1、字母两两组合
set @i = 1
set @j = 1
while @i <= 26
begin
set @j = @i + 1
while @j <= 26
begin
print substring(@s1 , @i , 1) + substring(@s1 , @j , 1)
set @j = @j + 1
end
set @i = @i + 1
end

--2、数字两两组合
set @i = 1
set @j = 1
while @i <= 10
begin
set @j = @i + 1
while @j <= 10
begin
print substring(@s2 , @i , 1) + substring(@s2 , @j , 1)
set @j = @j + 1
end
set @i = @i + 1
end

--3、字母和数字的混合组合
set @i = 1
set @j = 1
while @i <= 26
begin
set @j = 1
while @j <= 10
begin
print substring(@s1 , @i , 1) + substring(@s2 , @j , 1)
set @j = @j + 1
end
set @i = @i + 1
end

/*
AB
AC
AD
AE
AF
AG
AH
AI
AJ
AK
AL
.
.
.
Z5
Z6
Z7
Z8
Z9
*/
dawugui 2007-03-28
  • 打赏
  • 举报
回复
declare @s1 as varchar(26)
declare @s2 as varchar(10)
set @s1 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
set @s2 = '0123456789'
set @i as int
set @j as int
--1、字母两两组合
set @i = 1
set @j = 1
while @i <= 26
begin
set @j = @i + 1
while @j <= 26
begin
print substring(@s1 , @i , 1) + substring(@s1 , @j , 1)
@j = @j + 1
end
@i = @i + 1
end

--2、数字两两组合
set @i = 1
set @j = 1
while @i <= 10
begin
set @j = @i + 1
while @j <= 10
begin
print substring(@s2 , @i , 1) + substring(@s2 , @j , 1)
@j = @j + 1
end
@i = @i + 1
end

--3、字母和数字的混合组合
set @i = 1
set @j = 1
while @i <= 26
begin
set @j = 1
while @j <= 10
begin
print substring(@s1 , @i , 1) + substring(@s2 , @j , 1)
@j = @j + 1
end
@i = @i + 1
end
dawugui 2007-03-28
  • 打赏
  • 举报
回复
使用循环逐一相加.

22,301

社区成员

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

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