如何在sql server 08中的变量中存储多行

时间:2009-05-01 06:21:11

标签: sql-server

我想知道,如何在变量中存储多行.i.e。我的查询将返回多行,我想将其存储在变量中。 谢谢你。

2 个答案:

答案 0 :(得分:5)

在SQL Server 2008中,有一个名为 Table Valued Parameters 的功能,允许您将行存储到可以跨存储过程传递的变量中。

但是,如果你的意图是操纵同一个商店过程中的数据,那么普通的表变量就可以了。这是一个例子:

DECLARE @MyTableVariable TABLE
(
  Id int,
  FirstName varchar(10),
  LastName varchar(10)
);

INSERT @MyTableVariable(Id, FirstName, LastName)
SELECT Id, FirstName, LastName FROM SomeOtherTable WHERE SomeCriteria

@MyTableVariable现在包含符合条件的所有行,您仍然可以继续添加更多行,进行进一步操作甚至返回其内容。

答案 1 :(得分:0)

您可以使用table valued parameter,也可以使用旧的备用临时表。