본문 바로가기

Database/Oracle24

[Oracle] 랜덤 숫자 혹은 문자열 생성하기(DBMS_RANDOM) STRING : 문자열 생성STRING 함수는 OPTION과 LENGTH 두 가지의 파라미터 값으로 호출OPTION1) U, u : 대문자 알파벳의 문자열2) L,l : 소문자 알파벳의 문자열3) A,a : 대소문자 구분 없이 임의의 알파벳의 문자열4) X,x : 임의의 대문자 알파벳 혹은 숫자의 문자열5) P,p : 임의의 출력 가능한 문자들의 배열LENGTH : 생성할 문자열의 길이SELECT DBMS_RANDOM.STRING(OPTION, LENGTH) FROM DUAL;SELECT DBMS_RANDOM.STRING('A', 20) FROM DUAL;VALUE :지정된 범위 내에서 임의 숫자를 생성SELECT DBMS_RANDOM.VALUE(LOW, HIGH)FROM DUAL;SELECT DBMS_.. 2024. 4. 18.
[Oracle] 파티션 테이블 Default Table 변경 1. 테이블 변경ALTER TLABE [OWNER].[TABLE_NAME] MODIFY DEFAULT ATTRIBUTES TABLESPACE [NEW TABLESPACE]; 2. 인덱스 변경ALTER INDEX [OWNER].[INDEX NAME] MODIFY DEFAULT ATTRIBUTES TABLESPACE [NEW TABLESPACE]; 2023. 9. 22.
[Oracle] REGEXP_SUBSTR/문자 분리하기 REGEXP_SUBSTR(컬럼명, '[^;]+', 1, 몇번째) DATA : 1111;2222;3333 REGEXP_SUBSTR(COL_1, '[^;]+', 1, 1)==> 1111 REGEXP_SUBSTR(COL_1, '[^;]+', 1, 2)==> 2222 REGEXP_SUBSTR(COL_1, '[^;]+', 1, 3)==> 3333 2020. 4. 27.
[Oracle] 캐릭터셋 중복 제거 >>SELECT DISTINCT(NLS_CHARSET_NAME(CHARSETID)) CHARACTERSET, DECODE(TYPE#, 1, DECODE(CHARSEETFORM, 1, 'VARCHAR2', 2, 'NVARCHAR2', 'UNKOWN'), 9, DECODE(CHARSEETFORM, 1, 'VARCHAR2', 2, 'NVAR VARYING', 'UNKOWN'), 96, DECODE(CHARSEETFORM, 1, 'CHAR', 2, 'NCHAR', 'UNKOWN'), 112, DECODE(CHARSEETFORM, 1, 'CLOB',.. 2019. 9. 24.
[Oracle] Listener 로그 $ lsnrctlLSNRCTL> set log_status off>>LSNRCTL> set log_status on>> 2019. 9. 10.
[Oracle] 대소문자 끄기/만료기간 끄기 *** 패스워드 대소문자 구분 끄기 *** SQL> alter system set sec_case_sensitive_logon=false; 확인 방법 : 계정 접속 시 대소문자 구분 없이 접속해본다. ex) sqlplus dreamer/dsdvp     sqlplus dreamer/DSDVP *** 패스워드 만료기간 끄기 *** SQL> select username, account_status, lock_date, expiry_date from dba_users;      -> EXPIRY_DATE 의 내용이 있는지 확인 SQL> alter profile default limit password_life_time unlimited; 확인 방법 SQL> select * from user_password_l.. 2019. 3. 8.
[Oracle] 통계정보 생성 -- 해당 스키마에 해당하는 테이블과 테이블 스페이스 조회SELECT OWNER, TABLE_NAME, TABLESPACE_NAME FROM DBA_TABLES WHERE OWNER = '스키마명'; -- 해당 스키마에 해당하는 테이블의 통계정보 조회SELECT TABLE_NAME, NUM_ROWS, CHAIN_CNT, BLOCKS, EMPTY_BLOCKS, AVG_SPACE, AVG_ROW_LEN FROM DBA_TABLES WHERE OWNER = '스키마명'; -- 해당 스키마에 해당하는 인덱스의 통계정보 조회SELECT TABLE_NAME, INDEX_NAME, STATUS, NUM_ROWS, LEAF_BLOCKS, BLEVEL FROM DBA_INDEXES WHERE OWNER = '스키마명';.. 2018. 12. 13.
[Oracle] 컬럼을 행으로 변경 ## 여러개 컬럼을 하나의 컬럼으로 변경 WITH TT AS(SELECT 1 AS EMP_ID, 10 AS A_VAL, 20 B_VAL, NULL AS C_VAL FROM DUALUNION ALLSELECT 2 AS EMP_ID, 30 AS A_VAL, 40 B_VAL, 50 AS C_VAL FROM DUALUNION ALLSELECT 3 AS EMP_ID, 60 AS A_VAL, 70 B_VAL, 80 AS C_VAL FROM DUAL)SELECT EMP_ID, KEY_1, VAL_1FROM TTUNPIVOT (VAL_1 FOR KEY1 IN (A_VAL AS 'A', B_VAL AS 'B', C_VAL AS 'C'))WHERE 1=1AND EMP_ID  ## 결과 ##EMP_ID KEY_1 .. 2017. 8. 3.
[Oracle] DBMS_LOB 관련 함수 알아두면 편한 DBMS_LOB 관련 함수 * DBMS_LOB.SUBSTR(CLOB_컬럼, 가져올 길이, OFFSET)                                * DBMS_LOB.INSTR(CLOB_컬럼, '검색할 단어', OFFSET, 몇 번째 위치한 단어)    * DBMS_LOC.GETLENGTH(CLOB_컬럼)                                                        [Ex. 01]SELECT  DBMS_LOB.GETLENGTH(CONTENTS) AS CON_LENGTH     FROM  BOARD WHERE  DOMAIN_CODE = 10012   AND  DBMS_LOB.INSTR(CONTENTS, 'Cookie', 1, 1) > 0   .. 2017. 8. 3.
[Oracle] 일자체크(REGEXP_LIKE) WITH TEMP_A AS(SELECT '20130325' AS C_DATE FROM DUALUNION ALLSELECT NULL       AS C_DATE FROM DUALUNION ALLSELECT ' '        AS C_DATE FROM DUALUNION ALLSELECT '2013 129' AS C_DATE FROM DUALUNION ALLSELECT '20130231' AS C_DATE FROM DUALUNION ALLSELECT '20130229' AS C_DATE FROM DUALUNION ALLSELECT '20130228' AS C_DATE FROM DUAL)SELECT C_DATE     , CASE WHEN C_DATE IS NULL THEN 'NULL'             .. 2013. 11. 14.
[Oracle] 오라클 실행 계획 보는 법 [Oracle] 실행계획 보는 법***설명플랜에서 나오는 각 라인을‘로우 소스(Row Source)’라고 한다. 플랜을 보면서 처리 순서를 판단하는 것은 간단하다. 플랜은 트리 형태로 되어 있으며, 자신보다 하위 레벨이 있으면 하위 레벨부터, 같은 레벨이라면 위(상)의 로우소스부터 실행 된다.위플랜의‘Optimizer=CHOOSE’에서알수있듯이해당SQL 문장은 옵티마이저 모드가 CHOOSE에서 플랜이 만들어진 것이다. 또한 플랜에서 ‘Cost=’의 항목이 나오면CBO로 풀렸다는 것이다. RBO인지 CBO인지의 판단은 옵티마이저 모드의 항목으로 판단하는 것이 아니라 ‘Cost=’로 판단한다는 것에 주의하자.위 플랜에서 2개의 테이블 DEPT와 EMP 테이블 각각의 액세스 경로를 확인할 수 있다. 모두 인덱.. 2013. 7. 31.
오라클) 테이블관련 정보조회 * 테이블관련 정보조회 요약 설명 테이블명 비고 오브젝트정보 ALL_OBJECTS 모든 오브젝트 정보 테이블정보 ALL_TABLES 모든 테이블 스페이스정보 시노님정보 ALL_SYNONYMS 모든 테이블 OWNER별 시노님 및 DB Link정보 인덱스정보 ALL_IND_COLUMNS 모든 테이블의 인덱스정보 컬럼정보 ALL_TAB_COLUMNS 모든 테이.. 2013. 7. 18.