Assegnare variabili per pool SQL dedicati in Azure Synapse Analytics
In questo articolo sono disponibili suggerimenti essenziali per l'assegnazione di variabili T-SQL nel pool SQL dedicato.
Impostare le variabili con DECLARE
Le variabili nel pool SQL dedicato vengono impostate usando l'istruzione DECLARE
o l'istruzione SET
. L'inizializzazione delle variabili con DECLARE è uno dei modi più flessibili per impostare un valore di variabile nel pool SQL.
DECLARE @v int = 0
;
È anche possibile usare DECLARE per impostare più di una variabile contemporaneamente. Non è possibile usare SELECT o UPDATE per eseguire le operazioni seguenti:
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')
;
Non è possibile inizializzare e usare una variabile nella stessa istruzione DECLARE. Per illustrare il concetto, l'esempio seguente non è consentito, perché @p1 viene inizializzato e usato nella stessa istruzione DECLARE. Di conseguenza, l'esempio seguente restituisce un errore:
DECLARE @p1 int = 0
, @p2 int = (SELECT COUNT (*) FROM sys.types where is_user_defined = @p1 )
;
Impostare i valori con SET
SET è un metodo comune per l'impostazione di una singola variabile.
Le istruzioni seguenti sono tutte valide per impostare una variabile con SET:
SET @v = (Select max(database_id) from sys.databases);
SET @v = 1;
SET @v = @v+1;
SET @v +=1;
È possibile impostare una sola variabile alla volta con SET. Tuttavia, gli operatori composti sono consentiti.
Limiti
Non è possibile usare UPDATE per l'assegnazione di variabili.
Passaggi successivi
Per altri suggerimenti sullo sviluppo, vedere la panoramica dello sviluppo.