MSSQL 테이블 변수 생성 및 사용 방법

MSSQL 테이블 변수 생성 및 사용 방법

MS SQL에서 테이블 변수는 TABLE 형으로 선언한 지역 변수입니다. 테이블 변수는 사용자 정의 함수, 저장 프로시저, 트리거를 만들 때 많이 사용합니다. 예로 조회용 화면을 만들 때 단순 쿼리문으로 해결되지 않는 경우 저장 프로시저로 만들어 생성된 결과 집합을 테이블 변수에 담아 두고 SELECT 테이블 변수 형태로 많이 사용하죠. 그리고 복잡한 로직을 저장 프로시저로 개발할 때 테이블 변수를 잘 사용하게 되면 단순화할 수도 있습니다. 이처럼 테이블 변수는 많은 장점이 있습니다.

그럼 간단한 예제를 통해서 테이블 변수 사용법에 대해서 알아보죠.

포스트 기준

– Microsoft SQL Server 2019

– SSMS 18.11

사용 예제

▶ 예제

/* 변수 선언 및 할당 */
DECLARE @P_ID    NVARCHAR(50) = '1001'
     
/* 테이블 변수 선언 */
DECLARE @TEMP TABLE (
   P_ID        NVARCHAR(50),
   NAME        NVARCHAR(50),
   DEPART      NVARCHAR(50),
   GRADE       SMALLINT   DEFAULT 0,   -- 테이블 생성과 같이 제약조건 사용가능
   S_ID        NVARCHAR(50),
   SUBJECT     NVARCHAR(50),
   SCORE       SMALLINT,
   CLASS       NVARCHAR(10)
)
     
/* 테이블 변수 데이터 저장 */
INSERT INTO @TEMP
SELECT A.P_ID,      -- 학번
       B.NAME,      -- 성명
       B.DEPART,    -- 학과
       B.GRADE,     -- 학년
       A.S_ID,      -- 과목코드
       C.SUBJECT,   -- 과목
       A.SCORE,     -- 점수
       A.CLASS      -- 등급
  FROM BS_DEMO_8_3 A
       INNER JOIN BS_DEMO_8_1 B ON A.P_ID = B.P_ID
       INNER JOIN BS_DEMO_8_2 C ON A.S_ID = C.S_ID
 WHERE A.P_ID = @P_ID
     
/* 테이블 처럼 사용 */
SELECT * FROM @TEMP
테이블 변수 생성 사용 예제

함께 보면 좋은 게시글

위로 스크롤