可以在SQL Server中分配表“变量”吗?

时间:2018-03-21 18:44:59

标签: sql-server table-variable

假设我有一个表变量定义为:

DECLARE @FilteredIDs TABLE(ID UNIQUEIDENTIFIER, UNIQUE CLUSTERED (ID))

函数可以返回表变量,所以假设我有一个函数接受一些输入并返回@OutputTable(具有相同的定义)。现在假设我想在一个循环中多次调用该函数,每次都传递不同的参数,每次我想将@FilteredIDs@OutputTable相交并将结果相交的集合返回给{ {1}}变量,以便在循环结束时,@FilteredIDs将包含所有迭代的所有交叉点的结果。

我找不到有关如何设置表变量值的任何信息。一旦声明,我只能像表一样使用它,而不是表'变量'(例如@FilteredIDs似乎不是有效的声明)。我可以截断表并重新插入数据,但由于我已经将数据插入到第3个表变量中,我只想将第一个表变量引用到第3个表,而不必截断第一个表并重新插入所有数据

如果这是不可能的,那么可能有一种方法以这种方式重命名临时表,这样当稍后在过程中使用相同的临时表名时,它引用的是与开始时不同的表。程序?

0 个答案:

没有答案