IT

[MSSQL] EXISTS, 조건 검색 처리

슈퍼대디★ 2014. 3. 12. 21:21

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

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 가 있다..

댓글수0