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
함께 보면 좋은 게시글
- MSSQL 변수 – 선언(DECLARE), 대입(SET), 반환(SELECT)
- MSSQL 커서(CURSOR) 사용법 및 예제
- MSSQL 스칼라 함수 사용법 및 예제 – 사용자 정의 함수
- MSSQL 테이블 반환 함수 사용법 및 예제 – 사용자 정의 함수
- MSSQL 저장 프로시저 사용법(실행) 및 예제 (TRY…CATCH 등)
이 글이 도움이 되셨다면 공유 부탁 드립니다.


![[SSMS] 로컬 서버(PC)에 설치한 MSSQL 서버 연결하는 방법](https://bluesharehub.com/wp-content/uploads/2022/02/img_41.png)
