쿼리 질문! 0 2 5,475

by 통쓰 [SQL Query] [2024.04.26 13:46:50]


아래와 같이 같은 테이블 운영과 개발 DB랑 비교해서 운영에 없는걸 찾을때, 
이렇게 하는게 맞을까요..? 조금 속도가 느려서요.
키값은 저 아래 4개입니다...

동기화하면서 운영에서 데이터가 삭제되는게 있어서 찾으려고 합니다...


    SELECT COUNT(*) 
      FROM TEST_TABLE@TOSS_DEV A
    LEFT JOIN (
              SELECT *
                FROM TEST_TABLE B
              ) B
           ON A.COMP_CD = B.COMP_CD 
          AND A.CUST_CD = B.CUST_CD
          AND A.DATA_TP = B.DATA_TP
          AND A.ITEM_CD = B.ITEM_CD   
        WHERE B.COMP_CD IS NULL
          AND B.CUST_CD IS NULL
          AND B.DATA_TP IS NULL
          AND B.ITEM_CD IS NULL;  

 

by 마농 [2024.04.26 14:50:39]

1. 인라인뷰는 굳이 필요 없고 -> 제거
2. 널 조건은 4개 다 할 필요는 없습니다. 하나만 걸어도 됩니다.
3. MINUS 를 이용하는 방법도 있습니다.


by 통쓰 [2024.04.26 14:58:29]

아 MINUS  로도 한번 해봐야겠네요. 감사합니다!!

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입