최근 포토로그


오라클에서 MSSQL처럼 TOP 1 을 통하여 UPDATE하기

우선 http://nagid.egloos.com/3017597 이 게시물 참조.


SET SERVEROUTPUT ON;
BEGIN
                MERGE INTO hrap002 m 
                USING (SELECT rid, ROWNUM rn FROM (SELECT ROWID rid FROM hrap002
                                                    where emp_id = '10001'
                                                   ORDER BY appnt_dt desc, SEQ_NO desc)
                                            where ROWNUM = 1       
                                                   ) s 
                ON (m.ROWID = s.rid) 
                WHEN MATCHED THEN 
                UPDATE SET job_title_cd =  '11'
                
                ;   
          
    DBMS_OUTPUT.PUT_LINE( TO_CHAR(SQL%ROWCOUNT) || ' 줄 반영되었어..');
    DBMS_OUTPUT.PUT_LINE( TO_CHAR(etl.get_merge_insert_count) || ' 줄 추가되었어.');
    DBMS_OUTPUT.PUT_LINE( TO_CHAR(etl.get_merge_update_count( SQL%ROWCOUNT ))|| ' 줄 수정되셨어.');
                
END;

요런 방식으로 쓰면 자기가 원하는 방식으로 업데이트를 칠수 있음.
물론 이 방식으로 Insert도 할 수 있음.

덧글

댓글 입력 영역