Přiřazení proměnných pro vyhrazené fondy SQL ve službě Azure Synapse Analytics

V tomto článku najdete základní tipy pro přiřazování proměnných T-SQL ve vyhrazeném fondu SQL.

Nastavení proměnných pomocí příkazu DECLARE

Proměnné ve vyhrazeném fondu SQL se nastavují pomocí DECLARE příkazu nebo SET příkazu . Inicializace proměnných pomocí příkazu DECLARE je jedním z nejflexibilnějších způsobů nastavení hodnoty proměnné ve fondu SQL.

DECLARE @v  int = 0
;

Příkaz DECLARE můžete také použít k nastavení více proměnných najednou. Příkazy SELECT nebo UPDATE nemůžete použít k provedení následujících kroků:

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')
;

Ve stejném příkazu DECLARE nemůžete inicializovat a použít proměnnou. Pro ilustraci tohoto bodu není následující příklad povolen, protože @p1 je inicializován a použit ve stejném příkazu DECLARE. V následujícím příkladu se zobrazí chyba:

DECLARE @p1 int = 0
,       @p2 int = (SELECT COUNT (*) FROM sys.types where is_user_defined = @p1 )
;

Nastavení hodnot pomocí set

SET je běžná metoda nastavení jedné proměnné.

Následující příkazy jsou všechny platné způsoby, jak nastavit proměnnou pomocí SET:

SET     @v = (Select max(database_id) from sys.databases);
SET     @v = 1;
SET     @v = @v+1;
SET     @v +=1;

Pomocí příkazu SET můžete nastavit pouze jednu proměnnou najednou. Složené operátory jsou však přípustné.

Omezení

Funkci UPDATE nelze použít pro přiřazení proměnné.

Další kroky

Další tipy pro vývoj najdete v přehledu vývoje.