请教:如何将SELECT语句作为参数传递给存储过程中的临时表? ( 积分: 100 )

  • 主题发起人 主题发起人 jsdj007
  • 开始时间 开始时间
J

jsdj007

Unregistered / Unconfirmed
GUEST, unregistred user!
我想将SELECT语句作为参数传递给存储过程中的临时表,语句如下:
declare @a varchar(100)
set @a='select * from Units_Info'
select * into #table from + @a
执行报错:第 3 行: '+' 附近有语法错误。
请教各位高手,应如何编写这个SQL语句,谢谢!
 
declare @a varchar(100),@sql varchar(1000)
set @a='select * from Units_Info'
select @sql='select * into #table from ('+rtrim(@a)+') A'
exec(@sql)
 
谢谢,但我在
declare @a varchar(100),@sql varchar(1000)
set @a='select * from Units_Info'
select @sql='select * into #table from ('+rtrim(@a)+') A'
exec(@sql)
后加了条
select * from #table
报错:对象名 '#table' 无效。
请教该怎样显示#table中的记录?
 
declare @a varchar(100)
set @a='select * from base01'
--print ('select * into #tab from '+@a+' as b')

exec ('select * into #tab from ('+@a+') as b')

通过测试
 
declare @a varchar(100)
set @a='select * from base17'

exec ('select * into ##tab from ('+@a+') as b')

select * from ##tab
 
后退
顶部