사용되는 변수는 값뿐만 아니라 여러행으로 조회되는 결과를 담아 둘 수 있습니다. 테이블(TABLE)변수는 메모리에 일시적으로 생성되는 TABLE로 쿼리가 실행되는 세션안에서만 유효하며ㅡ 일반 변수와 같은 역할 을 합니다.
-TABLE변수는 Session이 끝나면 자동으로 삭제 됩니다. 예를 들어 프로시저(PROCEDURE)내에서 TABLE 변수가 생성되었을 떄 해당 Procedure가 종료되면 DROP TABLE을 사용하지 않더라도 자동으로 사라집니다.
TABLE변수를 이용하면, 쿼리의 복잡성을 떨어트릴수 있으며, 속도 개선에 많은 도움이 될 것입니다.
-사용예시
DECLARE @[DE_TABLE] TABLE(
[컬럼명1] [컬럼타입] [NULL여부],
[컬럼명2] [컬럼타입] [NULL여부],
[컬럼명3] [컬럼타입] [NULL여부],
여기서 다른 테이블에서 생성된 데이터 값을 INSERT INTO @DE_TABLE 선택하여 넣어주어, 테이블 변수를 사용한다.
CASE WHEN
CASE WHEN 파이썬에서 if문을 사용하여 조건문을 작성하는 것처럼 SQL에서도 case when을 통해 조건문을 작성할 수 있다. 파이썬에서는 if, elif, else 를 사용하지만 SQL에서는 CASE WHEN, THEN, ELSE, END를 사용한다.
사용예시 : SELECT A,B,C,D,E
CASE
WHEN F IS NULL THEN 'EMPTY'
ELSE F
END AS F_1
DECLARE
CASE WHEN