none
Reccorer resultados de una consulta RRS feed

  • Pregunta

  • Buen dia a todos, estoy creando un procedimiento almacenado, tengo declaradas 10 variables de la siguiente manera:

    DECLARE @var1 VARCHAR(1)
    DECLARE @var2 VARCHAR(1)
    DECLARE @var3 VARCHAR(1)
    DECLARE @var4 VARCHAR(1)
    DECLARE @var5 VARCHAR(1)
    DECLARE @var6 VARCHAR(1)
    DECLARE @var7 VARCHAR(1)
    DECLARE @var8 VARCHAR(1)
    DECLARE @var9 VARCHAR(1)
    DECLARE @var10 VARCHAR(1)

    Para asignarles un valor tengo una consulta la cual me devuelve el valor por columnas que yo deseo.

    SELECT TOP 1 * FROM Tabla1

    Mi pregunta es si se puede recorrer ese row que me devuelve la consulta anterior, para asignarle a mis variables el valor que le corresponde? (pueden guiarme sobre como lo podria realizar?), ya que lo realizo actualmente es consultar directamente por cada variable cada valor que le corresponde, de la siguiente manera:

    SELECT TOP 1 @var1 = Column1 FROM Tabla1
    SELECT TOP 1 @var2 = Column2 FROM Tabla1
    SELECT TOP 1 @var3 = Column3 FROM Tabla1
    SELECT TOP 1 @var4 = Column4 FROM Tabla1
    SELECT TOP 1 @var5 = Column5 FROM Tabla1
    SELECT TOP 1 @var6 = Column6 FROM Tabla1
    SELECT TOP 1 @var7 = Column7 FROM Tabla1
    SELECT TOP 1 @var8 = Column8 FROM Tabla1
    SELECT TOP 1 @var9 = Column9 FROM Tabla1
    SELECT TOP 1 @var10 = Column10 FROM Tabla1


    lunes, 20 de enero de 2020 16:06

Respuestas

  • Hola Pollokullos:

    Si lo que quieres es hacer la asignación en una sola sentencia, puedes separar los valores, por comas.

    Select top(1) @VAR1 = COLUMN1, @VAR2 = Column2, @var3 = Column3 from Tabla1

    • Marcado como respuesta Pollokullos lunes, 20 de enero de 2020 16:16
    lunes, 20 de enero de 2020 16:08

Todas las respuestas