Puede usar la asignación SELECCIONAR para asignar múltiples variables. Este código genera una sola fila de constantes y asigna cada una a una variable.
SELECT
@var1 = 1,
@var2 = 'Zeus'
Puede incluso tablas de consultas y la asignación de tarea de esa manera:
SELECT
@var1 = c.Column1,
@var2 = c.Column2,
FROM
Customers c
WHERE c.CustomerID = @CustomerID
Cuidado: Este código funciona como un bucle while.
- Si hay varias filas, cada fila se asignará a las variables y la última fila quedará allí. Si no especificó un pedido, renunció al control sobre qué fila será la última fila.
- Si no hay filas, las variables no se asignarán en absoluto. Las variables no se establecerán en nulo; permanecerán sin cambios. Este es un problema clave si la asignación se realiza en un bucle (normalmente resulta en un bucle infinito ya que las variables nunca cambian).
Prefiere usar la asignación de SET sobre la asignación SELECT. Solo use la asignación SELECCIONAR cuando considere los dos escenarios anteriores.
Perfecto, gracias! – jandersson