如何声明具有相同结构的两个表变量?

时间:2013-12-18 12:56:16

标签: sql-server table-variable

我有以下表变量声明:

DECLARE @MyTable TABLE
(
   --ten columns declared here
)

我想要声明另一个具有相同结构的表变量(这样我将select-in-select插入第一个,然后将结果复制到第二个然后我逐个删除第一个变量中的条目并返回结果是第二个。)

我试过了:

DECLARE @MyTable, @MyTableCopy TABLE
(
   --ten columns declared here
)

但是SQL Server Express不满意并且说

  

Msg 102,Level 15,State 1,Line 1语法不正确,','。

如何声明两个结构相同的表变量?

1 个答案:

答案 0 :(得分:2)

你不能这样做,但你可以使用临时表这样做。新创建的#temp或parmanent表将具有相同的表结构。

Declare @t table(startdate date,enddate date,duration int)
select * into #t1 from @t 

select * from @t1
drop table #t1