728x90
오늘은 MSSQL 커서 사용법에 대해서 알아보고
추가로 이해를 돕기 위한 예제까지 다루어 보도록 하겠습니다.
MSSQL 커서 란?
테이블에서 여러개의 행을 조회한 후 쿼리의 결과를 한행씩 처리하는 방식입니다.
(테이블의 데이터를 커서에 담고, 한개의 행단위로 읽는 방식)
MSSQL 커서 사용법
[사전 준비]
먼저 bebeya 테이블을 생성합니다.
create table bebeya
(
name varchar(20),
age int
)
생성된 테이블에 3개의 값을 삽입합니다.
INSERT INTO bebeya VALUES('bebe', 1)
INSERT INTO bebeya VALUES('nana', 1)
INSERT INTO bebeya VALUES('sasa', 1)
테이블을 조회해 봅시다.
select * from bebeya
[커서 사용]
이제 커서를 사용해서 bebeya 테이블의 name을 @Tatal_name 컬럼에 담아서 출력해 보겠습니다.
--한개 ROW정보를 담을 변수 선언
DECLARE @name varchar(20)
DECLARE @age int
DECLARE @Tatal_name varchar(100)
set @Tatal_name =' '
-- 1. 커서 사용 선언
DECLARE bebeCS CURSOR FOR
select * from bebeya
-- 2. 커서 반복문 돌리기
OPEN bebeCS;
WHILE 1=1
BEGIN
FETCH NEXT FROM bebeCS INTO @name,@age
IF @@FETCH_STATUS <> 0 BREAK;
--반복 작업 수행
Set @Tatal_name = @Tatal_name +' | '+ @name
END
CLOSE bebeCS;
DEALLOCATE bebeCS;
--3. 결과 값 출력
select @Tatal_name as "모든 이름"
[커서 사용 종료]
예제 쿼리가 필요하신 분들은 아래의 첨부파일을 참조하세요
이상으로 MSSQL 커서 사용법에 대한 포스팅을 마치겠습니다.
반응형
그리드형
'IT > MSSQL' 카테고리의 다른 글
[MSSQL] NULL 값 체크(ISNULL) 및 변환 방법 (0) | 2021.03.11 |
---|---|
[MSSQL] 인덱스 단편화 확인 & 리빌드 진행 100% 효과 (3) | 2021.03.11 |
MSSQL SET NOCOUNT 사용법 (예제 포함) (0) | 2021.03.04 |
MSSQL While 반복문 사용 방법 (예제 포함) (0) | 2021.03.04 |
MSSQL 프로시저 생성, 수정, 조회, 실행, 삭제(예제 포함) (0) | 2021.02.26 |
댓글