/*
################################################################################################
제 목 : 결과 집합을 반복처리하는 프로시저
################################################################################################
*/
CREATE PROCEDURE [dbo].[test_procedure]
WITH EXEC AS CALLER
AS
BEGIN
DECLARE @test_txt VARCHAR(50)
DECLARE @test_int DECIMAL(18, 2)
-- 커서를 선언하여 초기 SELECT 쿼리에서 test_txt 와 test_int 를 반복 처리
DECLARE test_cursor CURSOR FOR
SELECT
a.text_txt AS text_txt,
a.test_int AS test_int
FROM tb_hahagogo a
-- 커서를 열고 첫 번째 행을 가져옴
OPEN test_cursor
FETCH NEXT FROM test_cursor INTO @ test_txt , @ test_int
-- 결과 집합을 반복 처리
WHILE @@FETCH_STATUS = 0
BEGIN
-- testtest 테이블을 업데이트
UPDATE testtest
SET match_int= @test_int
work_date = GETDATE()
WHERE match_text = @test_txt
-- 다음 행을 가져옴
FETCH NEXT FROM test_cursor INTO @test_txt , @ test_int
END
-- 커서를 닫고 할당 해제
CLOSE test_cursor
DEALLOCATE test_cursor
END
'IT > DB' 카테고리의 다른 글
MSSQL 소계,총계,합계 구하기 (0) | 2024.11.25 |
---|---|
MSSQL 이번주 일요일 부터 토요일까지 날짜 구하기 (0) | 2024.11.17 |
MSSQL LOCK 확인 후 죽이기(KILL) (0) | 2024.11.11 |
MSSQL CONVERT DATE형식의 종류 (0) | 2024.11.08 |
DBeaver 쿼리 조회 결과를 엑셀 파일로 저장하기(DATA EXPORT) (1) | 2024.11.07 |