Database/Oracle

오라클 테이블 명세생성 조회 쿼리

하루y 2022. 8. 17. 08:50
SELECT TC.OWNER
     , TC.TABLE_NAME 
     , TC.COLUMN_NAME
     , TRANSLATE(CC.COMMENTS, CHR(10)||CHR(13), '.') AS COMMENTS
     , CASE WHEN TC.NULLABLE = 'N' THEN 'Y'
            ELSE 'N'
            END AS NOT_NULL
     , TC.DATA_TYPE
     , CASE WHEN TC.DATA_TYPE = 'NUMBER' AND TC.DATA_PRECISION IS NOT NULL THEN '' || TC.DATA_PRECISION || ',' || TC.DATA_SCALE || ''
            WHEN TC.DATA_TYPE LIKE '%CHAR%' THEN '' || TC.DATA_LENGTH || ''
            ELSE NULL
            END AS TYPE_SIZE
FROM  ALL_TAB_COLUMNS  TC
    , ALL_COL_COMMENTS CC
WHERE TC.OWNER = CC.OWNER
  AND TC.COLUMN_NAME = CC.COLUMN_NAME
  AND TC.TABLE_NAME = CC.TABLE_NAME 
--  AND TC.OWNER = '스키마명'
--  AND TC.TABLE_NAME = '테이블명'
ORDER BY TC.TABLE_NAME, TC.COLUMN_ID
728x90