Development Tip

SQL Server 커서에서 여러 값 가져 오기

yourdevel 2020. 11. 7. 10:37
반응형

SQL Server 커서에서 여러 값 가져 오기


한 번에 처리하고 싶은 행의 여러 열을 포함하는 커서가 있습니다. 커서를 사용하는 방법에 대한 대부분의 예제는 커서의 특정 열을 한 번에 하나씩 스칼라 값에 할당 한 다음 다음 행으로 이동하는 것을 보여줍니다.

예 :

OPEN db_cursor  
FETCH NEXT FROM db_cursor INTO @name  

WHILE @@FETCH_STATUS = 0  
BEGIN  
       --Do Stuff with @name scalar value, then get next row from cursor

       FETCH NEXT FROM db_cursor INTO @name  
END

내가 알고 싶은 것은 다음과 같은 일을 할 수 있는지 여부입니다.

    OPEN db_cursor  
    FETCH NEXT FROM db_cursor; 

    WHILE @@FETCH_STATUS = 0  
    BEGIN  
           SET @myName = db_cursor.name;
           SET @myAge = db_cursor.age;
           SET @myFavoriteColor = db_cursor.favoriteColor;
           --Do stuff with scalar values

           FETCH NEXT FROM db_cursor; 
    END

항상 도움을 주시면 감사하겠습니다.


이것은 작동합니다.

DECLARE db_cursor CURSOR FOR SELECT name, age, color FROM table; 
DECLARE @myName VARCHAR(256);
DECLARE @myAge INT;
DECLARE @myFavoriteColor VARCHAR(40);
OPEN db_cursor;
FETCH NEXT FROM db_cursor INTO @myName, @myAge, @myFavoriteColor;
WHILE @@FETCH_STATUS = 0  
BEGIN  

       --Do stuff with scalar values

       FETCH NEXT FROM db_cursor INTO @myName, @myAge, @myFavoriteColor;
END;
CLOSE db_cursor;
DEALLOCATE db_cursor;

참고 URL : https://stackoverflow.com/questions/4974981/get-multiple-values-in-sql-server-cursor

반응형