반응형
postgreSql에서 전체 테이블명이나 컬럼명을 조회하는 방법에 대해 알려드릴께요.
1. 전체 테이블명/컬럼명/자료형/최대길이 조회하기
SELECT
TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH
FROM
INFORMATION_SCHEMA.columns
전체 테이블, 컬럼 정보가 조회되는 것을 볼 수 있죠
2. 특정 컬럼명 검색하기
'USR_ID' 컬럼이 들어있는 모든 테이블명을 검색하고 싶을 때
대소문자로 조회결과에서 제외되는것을 방지하기위해 UPPER 대문자로 검색했습니다.
SELECT
TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH
FROM
INFORMATION_SCHEMA.columns
WHERE
UPPER(COLUMN_NAME) = 'USR_ID';
3. 특정 테이블에 포함된 컬럼들 검색
유저정보 테이블에 어떤 컬럼들이 있는지 궁금하네요
SELECT
TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH
FROM
INFORMATION_SCHEMA.columns
WHERE
UPPER(TABLE_NAME) = 'TB_USR_M';
이렇게 postgreSql에서 테이블, 컬럼 정보를 조회하는 쿼리를 작성해보았습니다.
테이블이 너무 많아지면 컬럼을 모두 기억하기 어려울때가 있는데
보통은 관리되고있는 ERD 프로그램으로 확인하시겠지만
ERD에 제외되어 있다거나, 누락된 경우에는 이 방법을 참고하시면 될 것 같네요.
* is_nullable 컬럼을 조회하면 YES / NO 로 null 가능여부도 조회할 수 있습니다.
(물론 테이블, 컬럼 생성 시에 정보가 작성되었다는 가정하에요)
728x90
반응형