使用下面的代碼(我發現 here),正在創建一個具有2000萬行的變量。我在哪裏可以找到存儲的變量。我能夠找到我創建的表,但這個特定的變量是不可見的。如何檢索sql服務器中聲明的變量
我的最終目標是將此變量及其值以CSV格式導出。我如何做到這一點。
Declare @p_NumberOfRows Bigint
--We need 20 million rows
Select @p_NumberOfRows=20000000;
With Base As
(
Select 1 as n
Union All
Select n+1 From Base Where n < Ceiling(SQRT(@p_NumberOfRows))
),
Expand As
(
Select 1 as C
From Base as B1, Base as B2
),
Nums As
(
Select Row_Number() OVER(ORDER BY C) As n
From Expand
)
Select n from Nums Where n<[email protected]_NumberOfRows
--Remove Maximum Recursion level constraint
OPTION (MaxRecursion 0);
變量未被存儲,因爲它們不是持久的。這意味着如果你想做更長久的事情,那麼你需要在你的代碼中做到這一點。 –
您並未創建變量,而是生成結果集。 '@ p_NumberOfRows'是一個變量,但它只有一個值。以下是如何導出爲CSV的一次性事件:http://stackoverflow.com/questions/3169220/export-query-result-to-csv-file-in-sql-server-2008。要在代碼中實現重複性,請執行以下操作:http://dba.stackexchange.com/questions/23566/writing-select-result-to-a-csv-file –
謝謝,絕對有幫助 – oivemaria