Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo, encontrará sugerencias para asignar variables de T-SQL con Synapse SQL.
Establecer variables con DECLARE
Las variables de Synapse SQL se establecen mediante la DECLARE instrucción o la SET instrucción . Inicializar variables con DECLARE es una de las formas más flexibles de establecer un valor de variable en Synapse SQL.
DECLARE @v int = 0
;
También puede usar DECLARE para establecer más de una variable a la vez. No puede usar SELECT o UPDATE para hacer lo siguiente:
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')
;
No se puede inicializar ni usar una variable en la misma instrucción DECLARE. Para ilustrarlo, no se permite el ejemplo siguiente, ya que @p1 se inicializa y se usa en la misma instrucción DECLARE. En el ejemplo siguiente se produce un error.
DECLARE @p1 int = 0
, @p2 int = (SELECT COUNT (*) FROM sys.types where is_user_defined = @p1 )
;
Establecimiento de valores con SET
SET es un método común para establecer una sola variable.
Las instrucciones siguientes son todas formas válidas de establecer una variable con SET:
SET @v = (Select max(database_id) from sys.databases);
SET @v = 1;
SET @v = @v+1;
SET @v +=1;
Solo puede establecer una variable a la vez con SET. Sin embargo, se permiten los operadores compuestos.
Limitaciones
No se puede usar UPDATE para la asignación de variables.
Pasos siguientes
Para obtener más sugerencias de desarrollo, consulte el artículo Introducción al desarrollo de SQL de Synapse .