MSSQL 커서(CURSOR)를 사용하여 행(Row) 반복작업을 수행하기


MSSQL 커서(CURSOR)를 사용하여 행(Row) 반복작업을 수행하기

커서(CURSOR) While 반복문과는 다르게 SELECT의 결과 행집합을 반복 작업해 줘야 하는 경우 커서(CURSOR) 만한 게 없는데요. 커서는 SQL문의 수행 결과에 행단위로 접근하여 튜플들을 한 번에 하나씩 차례대로 처리할 수 있습니다. 하나하나 반복작업을 수행하다 보니 당연히 너무 많은 데이터를 처리할 때에는 속도가 저하됩니다. 이 점 유의하여 커서를 사용한다면 아주 편리한 기능이라고 할 수 있습니다. 위와 같이 NUM, FIRST_NAME, AGE 컬럼으로 이루어진 테이블이 있을 때, 각 ROW별로 어떠한 행위를 해주기 위해서는 반복문이 필요합니다. 일단은 이 테이블의 명칭을 "TB_USER" 라고 하고 커서 쿼리를 작성해 보도록 하겠습니다. DECLARE CURSOR1 CURSOR FOR SELECT NUM, FIRST_NAME, AGE FROM TB_USER OPEN CURSOR1 DECLARE @NUM INT , @FIRST_NAME NVARCHAR(10) , @...


#CURSOR #반복문 #WHILE #SQL반복문 #SQLP #SQLD #SQL #ORACLE #MSSQL #커서

원문링크 : MSSQL 커서(CURSOR)를 사용하여 행(Row) 반복작업을 수행하기