利用exec建表.sql

来自「SQL语言常用的一些命令各代码」· SQL 代码 · 共 39 行

SQL
39
字号
我有一张表T_Base,8个字段
c_1  c_2   c_3   c_4   c_5   c_6   c_7   c_8
7    11    13    17     19   23    29    31
37   47    57    67    68    78   30    18
....


现在想变成这样的表T_Temp,56个字段
c_56    c_55    c_54    ....    c_1
1       7        11             n
....




declare @a varchar(200),@b int,@c varchar(1500)
select @a='c_'
select @b=56
select @c=@a+cast(@b as varchar(30))
while @b>1
 begin
  select @b=@b-1
  select @c=@c+' int,'+@a+cast(@b as varchar(30))
  end
declare @aa int,@bb int,@cc varchar(2000)
select @aa=1
select @bb=7
select @cc='1,7'
while @bb<=166
 begin
   select @bb=@bb+3
   select @cc=@cc+','+cast(@bb as varchar(4))
 end
exec('create table #ab('+@c+' int)'+'insert into #ab select '+ @cc
+'
select * from #ab'
)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?