최근 포토로그


MSSQL 단순 MERGE INTO 1

    MERGE INTO MWIPEXTRES AUT
    USING (SELECT 'X' AS DUAL) DUAL
       ON ( AUT.RES_NO  = @IN_RES_NO
          )
    WHEN MATCHED THEN
              UPDATE SET UPTUSER = @IN_UPD_ID
                             ,UPTDATE = GETDATE()
    WHEN NOT MATCHED THEN
          INSERT ( RES_NO
                  ,KIT_LOT_NO
                  ,SEQ
           )
          VALUES ( @IN_RES_NO
                  ,@IN_KIT_LOT_NO
                  ,1
                  ); 

뭐 이런식으로 쓰면 된다.
이건 조인을 사용하지 않는 문장이고, 조인을 사용한다면 
SELECT 'X' AS DUAL 
구문을 SELECT TABLE문으로 바꾸면 된다.

덧글

  • 천하귀남 2020/02/04 09:51 # 답글

    2012년에 MSSQL에 생겼나 하면서 정말 잘 쓰고 있습니다.
    다만 SP로 만들고 해당SP를 대량으로 반복호출하는 경우 속도저하가 매우 심해지는 경우가 있어 주의는 필요합니다.
    마찬가지로 트리거등에 사용할때도 대량인서트/업데이트에서 문제되더군요.
댓글 입력 영역