在 Azure Synapse Analytics 中指派專用 SQL 集區的變數
在本文中,您將找到在專用 SQL 集區中指派 T-SQL 變數的基本秘訣。
使用 DECLARE 設定變數
專用 SQL 集區中的變數是使用 DECLARE
語句或 SET
語句來設定。 使用 DECLARE 初始化變數是在 SQL 集區中設定變數值的最彈性方式之一。
DECLARE @v int = 0
;
您也可以使用 DECLARE 一次設定多個變數。 您無法使用 SELECT 或 UPDATE 來執行下列動作:
DECLARE @v INT = (SELECT TOP 1 c_customer_sk FROM Customer where c_last_name = 'Smith')
, @v1 INT = (SELECT TOP 1 c_customer_sk FROM Customer where c_last_name = 'Jones')
;
您無法在相同的 DECLARE 語句中初始化和使用變數。 為了說明這一點,下列範例不被允許,因為 @p1 會在相同的 DECLARE 語句中同時初始化和使用。 因此,下列範例會導致錯誤:
DECLARE @p1 int = 0
, @p2 int = (SELECT COUNT (*) FROM sys.types where is_user_defined = @p1 )
;
使用 SET 設定值
SET 是設定單一變數的常見方法。
下列語句都是使用 SET 設定變數的有效方式:
SET @v = (Select max(database_id) from sys.databases);
SET @v = 1;
SET @v = @v+1;
SET @v +=1;
您一次只能使用SET 設定一個變數。 不過,可以使用複合運算子。
局限性
您無法將 UPDATE 用於變數指派。
後續步驟
如需更多開發秘訣,請參閱開發概觀。