본문 바로가기

전체 글

(127)
[ORACLE] 문자열을 구분자 기준으로 ROW로 변환하는 테이블 함수 CREATE OR REPLACE TYPE EUS3_TYP_TO_ROW AS OBJECT ( IDX NUMBER , VAL VARCHAR2(4000) ); CREATE OR REPLACE TYPE EUS3_TYP_TO_ROW_TBL AS TABLE OF EUS3_TYP_TO_ROW ; CREATE OR REPLACE FUNCTION EUS3_FUNC_TO_ROW(IN_STR IN CLOB, IN_DELI IN VARCHAR2 DEFAULT ',') RETURN EUS3_TYP_TO_ROW_TBL PIPELINED AS V_DELI VARCHAR2(10) := IN_DELI; V_DELI_LEN INT := LENGTH(V_DELI); V_STR CLOB := IN_STR||V_DELI; ..
MSSQL 인덱스 조회 /* [MSSQL] 인덱스 조회 */ SELECT A.NAME AS TBL_ID , B.TYPE , B.NAME AS IDX_ID , C.KEY_ORDINAL , D.NAME AS COL_ID , C.IS_DESCENDING_KEY /*, C.IS_INCLUDED_COLUMN , B.INDEX_ID , B.TYPE_DESC , B.IS_PRIMARY_KEY , B.IS_UNIQUE_CONSTRAINT , B.IS_DISABLED , B.IS_HYPOTHETICAL , C.INDEX_COLUMN_ID , C.COLUMN_ID*/ FROM SYS.TABLES A INNER JOIN SYS.INDEXES B ON A.OBJECT_ID = B.OBJECT_ID AND B.TYPE IN ('1'..
[빈도추출] 오라클로 범주형, 연속형 빈도 추출 view 만들기 1) 아래 view를 생성 2) 해당 view where 조건의 TBLID 컬럼에 테이블명을 입력 후 조회3) SQL_FREQ_ORACLE 컬럼에 빈도추출하는 sql문장에 생성됨, 복사 후 실행 CREATE OR REPLACE VIEW VW_SQL_FREQ AS /* * PGM ID : VW_SQL_FREQ * TITLE : 컬럼값의 범주형, 연속형 빈도추출 SQL문장 생성 * AUTHOR : 임상우 grapro.lim@gmail.com * DATE : 2013.02.21 * VERSION : 1.0 * CONTENTS : * RUNCYCLE : * RUNTIME : * MODIFIED : */SELECT D.TABLE_TYPE , A.TNAME AS TBLID , D.COMMENTS AS TBLNM ,..
[ORACLE] 테이블 레이아웃 추출 수정.... 기존 소스 수정바람........... WITH V_INDEX AS ( SELECT A.PNO , B.TABLE_NAME , B.COLUMN_NAME , B.COLUMN_POSITION FROM ( SELECT ROW_NUMBER() OVER (PARTITION BY A.TABLE_NAME ORDER BY A.INDEX_NAME) AS PNO , A.INDEX_NAME , A.TABLE_NAME FROM USER_INDEXES A WHERE 1=1 AND A.UNIQUENESS = 'NONUNIQUE' ) A , USER_IND_COLUMNS B WHERE A.INDEX_NAME = B.INDEX_NAME ) SELECT A.TNAME AS TBLID , A.COLNO AS COLNO , A.CNAME ..
[ORACLE] 테이블스페이스 모니터 ----------------------- sh 파일 ----------------------- (작업중) #!/bin/sh TEMP_FILE=~/ts.dat get_msg() { sqlplus "/as sysdba" /dev/null PRINT_MSG=`cat ${TEMP_FILE}` echo "${PRINT_MSG}" sleep 2 done ----------------------- sql 파일 ----------------------- SELECT A.TABLESPACE_NAME AS TS_NM , ROUND(SPACE_SIZE/1024,0) AS TOT_MB , ROUND(BLOCKS_KB/1024,0) AS USED_MB , ROUND((SPACE_SIZE-BLOCKS_KB)/1024,0) AS..
[ORACLE] 테이블 레코드값 INSERT 쿼리 자동 생성 /* * PGM ID : ORACLE SQL - UNLOAD_INSERT_QUERY_GENERATOR * TITLE : 테이블 레코드값 INSERT 쿼리 자동 생성 * AUTHOR : grapro.lim@gmail.com * DATE : 2011.11.18 * VERSION : 1.0 * CONTENTS : SELECT후 결과값을 복사하여 결과값 SQL문장을 다시 SELECT함 PARAMETER 2개 설정 필요 * MODIFIED : */ WITH VTBL AS ( SELECT ROWNUM AS RNO , 100 AS STMT_CNT /* PARAMETER : 한 번에 INSERT할 ROW수 */ , TNAME AS TBL FROM TAB WHERE TNAME IN ( /* PARAMETER : INSE..
[ORACLE] 랜덤 분포 WITH V1 AS ( SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL UNION ALL SELECT NULL NO FROM DUAL ) SELECT CASE WHEN RND_P = 0 THEN 0 ELSE ((V_..
[ORACLE] 난수 생성 /****************************** FUNCTION 생성하기 ************************************/ CREATE OR REPLACE FUNCTION GETTEMPNUM ( P_NULL NUMBER /* NULL 리턴율 */ , P_BGN NUMBER /* 범위시작숫자 */ , P_END NUMBER /* 범위종료숫자 */ , P_SCL NUMBER /* 반올림자릿수 */ , P_TYPE NUMBER /* 0:기본, 1:정규분포, 2:역정규분포, 3:롱테일, 4:롱헤드, 5:정비례, 6:역비례, 7:증가, 8:감소 */ ) RETURN NUMBER IS /* * PGM ID : GETTEMPNUM * TITLE : 임시데이터생성 * AUTHOR : grap..

반응형