是否有存儲在使用SQL Server中的存儲過程的SELECT查詢結果的方式嗎?如何從SELECT存儲在SQL Server的多個值嗎?
在下面,我想同時存儲「一」,並從選擇查詢「二」的例子。
例子:
DECLARE @Values ???
SET @Values = (SELECT one, two FROM dummyTable)
是否有存儲在使用SQL Server中的存儲過程的SELECT查詢結果的方式嗎?如何從SELECT存儲在SQL Server的多個值嗎?
在下面,我想同時存儲「一」,並從選擇查詢「二」的例子。
例子:
DECLARE @Values ???
SET @Values = (SELECT one, two FROM dummyTable)
SELECT @Value1 = One, @Value2 = two FROM dummyTable;
您在SQL Server中沒有任何數組。
這是一個非常有用的技術 – chobo 2012-01-04 17:13:06
您可以使用一個表變量是:
DECLARE @Table TABLE (one varchar(100), two varchar(100)
INSERT INTO @TABLE
SELECT one, two from dummytable
像其他變量,這會不會是從PROC範圍之外的訪問。
它也是大量行的並不好,因爲優化總是假定一個單列的執行計劃。
如果您的查詢只返回單行:
DECLARE @v1 int -- or whatever
DECLARE @v2 int
SELECT @v1 = one, @v2 = two
FROM dummyTable
WHERE id = 1
如果查詢返回多行,可以使用SELECT INTO
,以避免申報表變量:
SELECT one, two
FROM dummyTable
INTO #temp
SELECT * FROM #temp
DROP TABLE #temp
要搶來自單行或多行的多個值? – 2012-01-03 20:27:41
派生表? http://www.4guysfromrolla.com/webtech/112098-1.shtml – Tim 2012-01-03 20:47:24