본문 바로가기
데이터베이스/MSSQL

MSSQL - 프로시저에서 SELECT 절의 값을 변수에 할당하는 방법

by Dokon Jang 2023. 7. 12.
반응형

MSSQL 프로시저에서 변수를 선언하고 SELECT절의 값을 변수에 할당하는 방법입니다.

변수 선언

DECLARE @변수명 데이터타입;

DECLARE @INT_VAL INT;
DECLARE @STR_VAL VARCHAR(200);

 

변수에 값 할당

변수에 값을 할당 할때는 앞에 SET을 기술하고 할당하면 됩니다.

SET @INT_VAL =  10;
SET @STR_VAL = 'ABCDED';

 

SELECT 절의 여러 값을 변수에 할당 하는 방법

SELECT 절의 여러 컬럼의 값을 할당 할 수도 있습니다.
ROW가 여러개인 경우 마지막 값이 할당되는점 주의하세요.

DECLARE @INT_VAL INT;
DECLARE @STR_VAL VARCHAR(200);

WITH TEST AS
(
	SELECT 10 VAL1, 'ABCED' VAL2
	UNION
	SELECT 20 VAL1, 'WYXZ' VAL2
)
SELECT @INT_VAL = VAL1, @STR_VAL = VAL2
  FROM TEST;
  
PRINT @INT_VAL;
PRINT @STR_VAL;.

 

SELECT 절의 하나의 컬럼 값을 할당하는 방법

하나의 ROW에 하나의 값을 할당하는 방법으로 SELECT의 결과가 여러 ROW 인 경우 오류가 발생합니다.

DECLARE @INT_VAL INT;
DECLARE @STR_VAL VARCHAR(200);

SET @INT_VAL = (SELECT 100);
SET @STR_VAL = (SELECT 'ABCD');

PRINT @INT_VAL;
PRINT @STR_VAL;
반응형

댓글