[오라클]1개의 ROW값을 N개의 ROW로 조회(CSV DATA)
어제 포스팅하였던 내용( [오라클]N개의 ROW의 값을 1개의 ROW로 조회 )의 반대 상황이 생깁니다 CSV DATA와 같이 어떤 구분자 (ex, ‘,’ )로 이루어진 하나의 String을 기준으로 N Row로 만들어서 조회해야 할 때 ‘CONNET BY’와 ‘REGEXP-SUBSTR’ 함수를 조합하여 구현할 수 있습니다 ‘ , ‘ 로 구분된 문자열을 N개의 ROW로 분리 WITH T AS ( SELECT 'ㄱ,ㄴ,ㄷ,ㄹ' AS CSV_STRING FROM DUAL ) SELECT TRIM(REGEXP_SUBSTR(CSV_STRING, '[^,]+', 1, LEVEL)) AS VALUE FROM T CONNECT BY REGEXP_SUBSTR(CSV_STRING, '[^,]+', 1, LEVEL) IS..
2024. 3. 20.
[오라클]날짜 한글+영문 표기
다국어 적용 또는 사용자의 요청에 의해 날짜를 영문으로 표기해야 할 경우가 있습니다 오라클에서는 날짜의 DATE 타입을 다양한 형태로 형변환 하여 표기가 가능하며 NLS_DATE_LANGUAGE 옵션을 사용하여 영문으로 표현할 수 있습니다 날짜 한글+영문 조회 SELECT TO_CHAR(SYSDATE,'DAY', 'NLS_DATE_LANGUAGE=KOREAN') AS "요일 전체표기 한글", TO_CHAR(SYSDATE,'DY', 'NLS_DATE_LANGUAGE=KOREAN') AS "요일 단축표기 한글", TO_CHAR(SYSDATE,'DAY', 'NLS_DATE_LANGUAGE=ENGLISH') AS "요일 전체표기 영문", TO_CHAR(SYSDATE,'DY', 'NLS_DATE_LANGUAGE=..
2024. 3. 13.
[오라클]테이블 Lock 조회+Session Kill
종종 Table에 Lock이 잡혀 있을 경우가 있습니다 특정 사용자가 COMMIT을 하지 않았을 수도, 프로그램 수행 중 어떤 문제로 인하여 Lock이 발생하는 경우도 있습니다 당장 해당 TABLE에 대한 LOCK을 풀지 않으면 업무에 지장이 있을 경우 KILL 해야합니다 DB LOCK 조회 SELECT SESSION_ID, OWNER, NAME FROM DBA_DML_LOCKS; SELECT A.SID, A.SERIAL#, B.TYPE, C.OBJECT_NAME, A.MACHINE, A.TERMINAL, A.PROGRAM -- 어떤PC 및 프로그램에서 Lock이 발생되었는지 확인 가능 FROM V$SESSION A, V$LOCK B, DBA_OBJECTS C WHERE A.SID = B.SID AND ..
2024. 3. 12.