티스토리 툴바



오라클 & 등록

UPDATE KETD29MT
  SET menuurl = 'type=1' || '&' || 'mmenu=4' || '&' || 'smenu=3' || '&' || 'tmenu=0'
where seq = 2;

& 앞에  \해줘야된다고들 하는뎅 
 ㅠ
&로 변경해줘도 안되공 애고고공 하다가  문자열 잘라서 붙여주었더니 되더라공
하튼 찾았으니 ~~~ 좋아
 
Trackback 0 Comment 0

Oracle에서 MERGE 구문 사용[Oracle]


Oracle에서 Data가 존재할때는 Update, 존재하지 않을때는 Insert로직을 사용할경우

Count를 해서 값이 0일경우에는 Insert, 1일 경우에는 Update로 분기를 시키는데

MERGE 구문에 대해서 알고 있다면 간단히 한방에 끝낼수 있따..

지겨운 IF문 탈출~~~

MERGE INTO target_table_name
      USING (table|view|subquery) ON (join condition)
WHEN MATCHED THEN
     UPDATE SET col1 = val1[, col2 = val2…]
WHEN NOT MATCHED THEN
     INSERT(...) VALUES(...)
 

 ◈ syntax 설명
 - INTO : DATA가 UPDATE되거나 INSERT될 TABLE이름을 지정 합니다.

 - USING : 대상 TABLE의 DATA와 비교한 후 UPDATE 또는 INSERT할 대상이 되는 DATA의 SOURCE 테이블 또는 뷰를 지정
 - ON  : UPDATE나 INSERT를 하게 될 조건으로, 해당 condition을 만족하는 DATA가 있으면 WHEN MATCHED 절을 실행하게 되고, 없으면 WHEN NOT MATCHED 이하를 실행하게 됩니다.

 - WHEN MATCHED : ON 조건절이 TRUE인 ROW에 수행 할
내용

 - WHEN NOT MATCHED
: ON 조건절에 맞는 ROW가 없을 때 수행할 내용
 

SQL>MERGE INTO emp_test et
    USING emp e
    ON(et.empno = e.empno)
 WHEN MATCHED THEN
    UPDATE SET et.sal = e.sal*1.1
 WHEN NOT MATCHED THEN
    INSERT VALUES (e.empno,e.ename,e.job,e.mgr,e.hiredate,e.sal,e.comm,e.deptno)




MERGE INTO  AAAAA A
USING(SELECT EMP_NO, AUTH_CD
      FROM  BBBBB
      WHERE EMP_NO = p_emp_no
      AND AUTH_CD = p_auth_cd) B
ON (A.EMP_NO = B.EMP_NO AND A.AUTH_CD = B.AUTH_CD)
WHEN MATCHED THEN
      UPDATE
      SET  A.REG_DATE = SYSDATE
           , A.REG_EMP_NO = p_reg_emp_no
WHEN NOT MATCHED THEN
      INSERT (A.EMP_NO, A.AUTH_CD, A.MNGER_YN, A.REG_DATE, A.REG_EMP_NO)
      VALUES (p_emp_no, p_auth_cd, 'N',SYSDATE,p_reg_emp_no);

이제껏 자바에서 if문으로 분기했던 쿼리가 한방에 끝~~~

하지만 테이블은 달라야 한다는거~~

http://neucareer.tistory.com/33?srchid=BR1http%3A%2F%2Fneucareer.tistory.com%2F33
Trackback 0 Comment 0

편지

김남조

그대만큼 사랑스러운 사람은 본 일이 없다
그대만큼 나를 외롭게 한 이도 없다
그 생각을 하면 내가 꼭 울게 된다

그대만큼 나를 정직하게 해 준 이가 없었다
내 안을 비추는 그대는 제일로 영롱한 거울
그대의 깊이를 다 지나가면 글썽이는 눈매의 내가 있다
나의 시작이다

그대에게 매일 편지를 쓴다
한 귀절 쓰면 한 귀절 와서 읽는 그대
그래서 이 편지는 한번도 부치지 않는다
Trackback 0 Comment 0