취업치트키

Oracle DB 관련 유용한 쿼리 모음 [DB치트키]

취트키마스터 2023. 1. 18. 18:55
728x90
반응형

이번 글에서는 오라클 데이터베이스에서 알아두면 유용한 DB 테이블 등 내역을 확인하는 방법을 소개드립니다.

전체 테이블 조회 방법

다음 쿼리를 실행하시면 전체 테이블 내역을 조회할 수 있습니다.

SELECT *
FROM ALL_TABLES
ORDER BY OWNER, TABLE_NAME
;

전체 VIEW 조회 방법


다음 쿼리를 실행하시면 전체 VIEW 내역을 조회할 수 있습니다.

SELECT *
FROM ALL_VIEWS
ORDER BY OWNER, VIEW_NAME
;

테이블 설명 조회 방법


테이블 설명은 다음과 같이 확인할 수 있습니다.
조회조건에 테이블 설명에 포함된 키워드를 조건으로 줘서 관련된 테이블 내역을 조회할 때도 유용합니다.

SELECT *
FROM ALL_TAB_COMMENTS
WHERE TABLE_TYPE = 'TABLE'
AND COMMENTS LIKE '%테이블설명%'
ORDER BY OWNER, TABLE_NAME
;

테이블별 컬럼 설명 조회 방법

다음은 컬럼 설명을 확인하는 방법입니다.

SELECT *
FROM ALL_COL_COMMENTS
WHERE TABLE_NAME LIKE '%테이블명%'
;

테이블 구조 조회

 

테이블의 컬럼의 속성 등을 확인하고 싶을 때는 다음 쿼리를 통해 확인할 수 있습니다.

SELECT A.TABLE_NAME
     , A.COLUMN_ID
     , A.COLUMN_NAME
     , B.COMMENTS
     , A.DATA_TYPE
     , DECODE(A.DATA_TYPE, 'CHAR', A.DATA_LENGTH
                          , 'RAW', A.DATA_LENGTH
                          , 'VARCHAR', A.DATA_LENGTH
                          , 'VARCHAR2', A.DATA_LENGTH
                          , A.DATA_PRECISION) AS WIDTH
     , A.DATA_SCALE
     , DECODE(A.NULLABLE, 'N', 'NOT NULL') AS NULLABLE
FROM  ALL_TAB_COLUMNS A
    , ALL_COL_COMMENTS B
WHERE A.WONER = B.OWNER
AND   A.TABLE_NAME = B.TABLE_NAME
AND   A.COLUMN_NAME = B.COLUMN_NAME
AND   A.TABLE_NAME LIKE UPPER(TRIM('테이블명'))
ORDER BY A.OWNER, A.TABLE_NAME, A.COLUMN_ID
;

Foreign key (F.K) 정보 조회

외래키 정보 조회하는 방법은 다음과 같습니다.

SELECT  /*+ FIRST_ROWS */
        A.CONSTRAINT_NAME
      , B.TABLE_NAME
      , B.COLUMN_NAME
      , B.POSITION
      , D.OWNER AS "부모OWNER"
      , D.TABLE_NAME AS "부모테이블"
      , D.COLUMN_NAME AS "부모컬럼"
FROM    ALL_CONSTRAINTS A
      , ALL_CONS_COLUMNS B
      , ALL_CONSTRAINTS C
      , ALL_TAB_COLUMNS D
WHERE   A.CONSTRAINT_NAME = B.CONSTRAINTS_NAME
AND     A.OWNER = B.OWNER
AND     A.R_OWNER = C.OWNER
AND     C.OWNER = D.OWNER
AND     C.TABLE_NAME = D.TABLE_NAME
AND     B.POSITION = D.COLUMN_ID
AND     A.TABLE_NAME = '테이블명'
;

 

 
728x90
반응형