Udostępnij za pośrednictwem


Przypisywanie zmiennych za pomocą usługi Synapse SQL

W tym artykule znajdziesz wskazówki dotyczące przypisywania zmiennych T-SQL przy użyciu usługi Synapse SQL.

Ustawianie zmiennych za pomocą funkcji DECLARE

Zmienne w usłudze Synapse SQL są ustawiane przy użyciu instrukcji DECLARE lub instrukcji SET . Inicjowanie zmiennych za pomocą funkcji DECLARE to jeden z najbardziej elastycznych sposobów ustawiania wartości zmiennej w usłudze Synapse SQL.

DECLARE @v  int = 0
;

Możesz również użyć funkcji DECLARE, aby ustawić więcej niż jedną zmienną naraz. Nie można użyć opcji SELECT lub UPDATE, aby wykonać następujące czynności:

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

Nie można zainicjować zmiennej i użyć jej w tej samej instrukcji DECLARE. Aby zilustrować, poniższy przykład nie jest dozwolony, ponieważ @p1 jest inicjowany i używany w tej samej instrukcji DECLARE. Poniższy przykład przedstawia błąd.

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

Ustawianie wartości za pomocą zestawu

SET to typowa metoda ustawiania pojedynczej zmiennej.

Następujące instrukcje są prawidłowymi sposobami ustawiania zmiennej przy użyciu zestawu SET:

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

Można ustawić tylko jedną zmienną naraz za pomocą zestawu. Jednak operatory złożone są dopuszczalne.

Ograniczenia

Nie można użyć aktualizacji do przypisania zmiennych.

Następne kroki

Aby uzyskać więcej wskazówek dotyczących programowania, zobacz artykuł Omówienie programowania w usłudze Synapse SQL .