상세 컨텐츠

본문 제목

[MSSQL] OUTPUT, 데이터 처리 후 결과 값 리턴

SQL Server

by 코딩하는 박줄기 2021. 10. 6. 21:00

본문

728x90
반응형

OUTPUT INSERT, UPDATE, DELETE 또는 MERGE 문의 영향을 받는 각 행의 정보 또는 각 행을 기반으로 하는 식을 반환합니다.

 

사용법

   A. INSERT 문과 함께 OUTPUT 사용

INSERT TB_USER OUTPUT INSERTED.* VALUES('JINWOOKING', '박진우', null, '서울');
-- TB_USER 테이블에 행을 삽입합니다.
-- OUTPUT INSERTED.* 절을 사용하여 결과를 반환합니다.

 

 

   B. DELETE 문과 함께 OUTPUT 사용

DELETE TB_USER OUTPUT DELETED.* WHERE USER_ID = 'JINWOOKING'
-- TB_USER의 행을 삭제합니다. 
-- OUTPUT DELETE.* 절은 DELETE 문의 결과로 삭제된 행의 모든 열을 반환합니다.

 

 

   C. UPDATE 문과 함께 OUTPUT 사용

UPDATE TB_USER
	SET PWD = 'PASSWORD'
	OUTPUT INSERTED.PWD,
		   DELETED.PWD
-- TB_USER 테이블을 업데이트합니다. 
-- UPDATE문을 적용하기 전에 존재했던 값(DELETED)과 업데이트된 값(INSERTED)을 반환합니다.

 

 

   D. INSERT 문과 함께 OUTPUT INTO 사용

DECLARE @MYMEMBER TABLE (
    USER_ID nvarchar(100),  
    USER_NAME VARCHAR(50),  
    PWD nvarchar(100),
	LOCATION nvarchar(100),
	REGDATE dateTime); 
    
INSERT TB_USER
    OUTPUT INSERTED.USER_ID, INSERTED.USER_NAME, INSERTED.PWD, INSERTED.LOCATION, GetDate()
        INTO @MYMEMBER  
VALUES ('JINWOOKING', '박진우', null, '서울');
-- TB_USER 테이블에 행을 삽입하고 OUTPUT 절을 사용하여 결과 반환과 GetDate()를 추가 @MYMEMEBER 행 삽입

 

 

참고

 

728x90
반응형

관련글 더보기

댓글 영역