Sql server 如何声明具有相同结构的两个表变量?
我有下表变量声明:Sql server 如何声明具有相同结构的两个表变量?,sql-server,table-variable,Sql Server,Table Variable,我有下表变量声明: DECLARE @MyTable TABLE ( --ten columns declared here ) 我想声明另一个具有相同结构的表变量,这样我就可以在第一个变量中插入from select,然后将结果复制到第二个变量中,然后逐个删除第一个变量中的条目,并返回第二个变量作为结果 我试过这个: DECLARE @MyTable, @MyTableCopy TABLE ( --ten columns declared here ) 但SQLServerEx
DECLARE @MyTable TABLE
(
--ten columns declared here
)
我想声明另一个具有相同结构的表变量,这样我就可以在第一个变量中插入from select,然后将结果复制到第二个变量中,然后逐个删除第一个变量中的条目,并返回第二个变量作为结果
我试过这个:
DECLARE @MyTable, @MyTableCopy TABLE
(
--ten columns declared here
)
但SQLServerExpress并不高兴,并表示
Msg 102,15级,状态1,第1行“,”附近的语法不正确
如何声明两个结构相同的表变量?您不能这样做,但可以使用临时表来声明。新创建的临时表或参数表将具有相同的表结构
Declare @t table(startdate date,enddate date,duration int)
select * into #t1 from @t
select * from @t1
drop table #t1
如果使用UDT,则只能在不重复定义的情况下执行此操作,但这是对数据库的永久更改。对于临时表,必须重复定义。