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

sha*_*oth 7 sql-server table-variable

我有以下表变量声明:

DECLARE @MyTable TABLE
(
   --ten columns declared here
)
Run Code Online (Sandbox Code Playgroud)

并且我想声明另一个具有相同结构的表变量(以便我将select-from-select插入到第一个,然后将结果复制到第二个,然后我逐个从第一个变量中删除条目并返回第二个结果是).

我试过这个:

DECLARE @MyTable, @MyTableCopy TABLE
(
   --ten columns declared here
)
Run Code Online (Sandbox Code Playgroud)

但SQL Server Express并不满意

消息102,级别15,状态1,行1','附近的语法不正确.

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

Kum*_*rsh 4

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

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

select * from @t1
drop table #t1
Run Code Online (Sandbox Code Playgroud)