[MSSQL] EXISTS, 조건 검색 처리

2014. 3. 12. 21:21IT

과거에는 소스단에서 분기하여 먼저 테이블을 검색하고 데이터가 있으면 
다른 쿼리 없으면 또 다른 쿼리를 처리를 하였다. 하지만 생산성에서 무척이네 떨어진다.

MSSQL에서는 EXITES 기능을 지원하여 아래와 같이 처리를 할 수 있다.



IF EXISTS( SELECT IDX FROM TABLE_NM WHERE 1=1 And STD_NO = @STD_NO ) BEGIN -- 위 SELECT문의 결과값이 존재할 경우 실행하거라!!  

UPDATE TABLE_NM
            SET STATUS = @STATUS
          WHERE 
            1=1 And STD_NO = @STD_NO
    END    
ELSE
    BEGIN    -- 위 SELECT문의 결과값이 없을  경우 실행하거라!!
        INSERT INTO TABLE_NM(STATUS, KOR_NM, SHYR, SHTM)  VALUES(@STATUS, @KOR_NM, @SHYR, @SHTM)
    END



그 반대로는 NOT EXISTS 가 있다..

'IT' 카테고리의 다른 글

[MSSQL] MSSQL 보안 가이드  (0) 2014.03.14
[JavaScript] 달력 소스  (0) 2014.03.13
[MSSQL] RANK, 순위함수  (0) 2014.03.12
[API] 무료 도로명 주소 검색 API  (0) 2014.03.11
[RealGrid+] RealGrid+ Components  (0) 2014.03.04