'오라클'에 해당되는 글 1건

  1. 2010.03.19 Oracle 쿼리 Tip 4

컬럼명 검색
select table_name, column_name from all_tab_columns where column_name like '%컬럼명%';

Update for Select
- A 테이블의 chg_id 값이 주민번호로 들어가야 하는데 로직상 실수로 인해 Email 주소의 ID 부분으로 입력되었다.
- 이럴때 사용자 정보 B테이블을 읽어서 주민번호로 A테이블을 update 하고자 한다.

Update A set chg_id =
    (Select jumin from B where substr(email, 1, instr(email, '@', 1) -1) = A.chg_id);

순위매기기
1.RANK
    RANK() OVER (
    [PARTITION BY <value expression1> [, ...]]
    ORDER BY <value expression2> [collate clause] [ASC|DESC]
    [NULLS FIRST|NULLS LAST] [, ...] )
    *동순위일때 건너뜀(1,1,1,3,3,5)

2.DENSE_RANK
    DENSE_RANK() OVER (
    [PARTITION BY <value expression1> [, ...]]
    ORDER BY <value expression2> [collate clause] [ASC|DESC]
    [NULLS FIRST|NULLS LAST] [, ...] )
    *동순위일때 연속됨(1,1,1,2,2,3)

DATA : A,A,A,B,B,C


테이블 LOCK 확인 및 해제

SELECT A.SID
     , A.SERIAL#
     , A.USERNAME
     , A.PROCESS
     , B.OBJECT_NAME
     , DECODE (C.LMODE, 2, 'RS', 3, 'RX', 4, 'S', 5, 'SRX', 8, 'X', 'NO') TABLE_LOCK
     , DECODE (A.COMMAND, 2, 'INSERT', 3, 'SELECT', 6, 'UPDATE', 7, 'DELETE', 12, 'DROP', 6, 'LOCK', 'UNKNOWN') SQL
     , DECODE (A.LOCKWAIT, NULL, 'NO WAIT', 'WAIT') STATUS
FROM   V$SESSION A, DBA_OBJECTS B, V$LOCK C
WHERE  A.SID = C.SID
AND    B.OBJECT_ID = C.ID1
AND    C.TYPE = 'TM'
AND    A.USERNAME = 'USER_NAME';


SELECT SUBSTR(C.OBJECT_NAME,1,20),A.SID,A.SERIAL#
FROM V$SESSION A, V$LOCK B, DBA_OBJECTS C
WHERE A.SID = B.SID
    AND B.ID1 = C.OBJECT_ID
    AND B.TYPE='TM';
    
    
ALTER SYSTEM KILL SESSION 'SID, SERIAL';

* 업무용으로 간혹 사용하게 되는 것들 중 외우고 다니기 귀찮은 거 나중에 또 검색하기 싫어서 지속적으로 업데이트할 예정임.

Posted by 좀모씨
이전버튼 1 이전버튼

블로그 이미지
Under Construction
좀모씨
Yesterday
Today
Total

달력

 « |  » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함