Változók hozzárendelése a Synapse SQL-lel

Ebben a cikkben tippeket talál a T-SQL-változók Synapse SQL-hez való hozzárendeléséhez.

Változók beállítása a DECLARE használatával

A Synapse SQL változói az DECLARE utasítással vagy az SET utasítással állíthatók be. A változók DEKLARÁLÁSsal való inicializálása az egyik legrugalmasabb módszer a változóértékek Synapse SQL-ben való beállítására.

DECLARE @v  int = 0
;

A DECLARE használatával egyszerre több változót is beállíthat. A SELECT vagy az UPDATE nem használható a következők végrehajtására:

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

Nem inicializálhat és nem használhat változót ugyanabban a DECLARE utasításban. A szemléltetés érdekében az alábbi példa nem engedélyezett, mivel a @p1 inicializálva van, és ugyanabban a DECLARE utasításban van használva. Az alábbi példa hibát ad.

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

Értékek beállítása a SET használatával

A SET egy gyakori módszer egyetlen változó beállítására.

A következő utasítások mind érvényesek a változók SET használatával történő beállítására:

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

A SET használatával egyszerre csak egy változót állíthat be. Az összetett operátorok azonban megengedettek.

Korlátozások

Az UPDATE nem használható változó-hozzárendeléshez.

Következő lépések

További fejlesztési tippekért tekintse meg a Synapse SQL-fejlesztés áttekintését ismertető cikket.