MariaDB 테이블 정보 추출 요청을 받아 처리하던 중 유용한 쿼리 발견
- 출처 : mysql 테이블 정의서 만들기
1. Database 내 1개 테이블
아래 변수를 수정하여 사용하시면 됩니다.
DB_NAME
: 데이터베이스 이름TABLE_NAME
: 테이블 이름
SELECT
ORDINAL_POSITION '순번',
COLUMN_NAME '필드명',
DATA_TYPE 'DATA TYPE',
COLUMN_TYPE '데이터 길이',
COLUMN_KEY 'KEY',
IS_NULLABLE 'NULL값여부',
EXTRA '자동여부',
COLUMN_DEFAULT '디폴트값',
COLUMN_COMMENT '필드설명'
FROM `information_schema`.COLUMNS
WHERE TABLE_SCHEMA = 'DB_NAME' AND TABLE_NAME = 'TABLE_NAME'
ORDER BY TABLE_NAME, ORDINAL_POSITION
2. Database 내 전체 테이블
아래 변수를 수정하여 사용하시면 됩니다.
DB_NAME
: 데이터베이스 이름
SELECT
a.TABLE_NAME '테이블명',
b.ORDINAL_POSITION '순번',
b.COLUMN_NAME '필드명',
b.DATA_TYPE 'DATA TYPE',
b.COLUMN_TYPE '데이터길이',
b.COLUMN_KEY 'KEY',
b.IS_NULLABLE 'NULL값여부',
b.EXTRA '자동여부',
b.COLUMN_DEFAULT '디폴트값',
b.COLUMN_COMMENT '필드설명'
FROM information_schema.TABLES a
JOIN information_schema.COLUMNS b ON a.TABLE_NAME = b.TABLE_NAME AND a.TABLE_SCHEMA = b.TABLE_SCHEMA
WHERE a.TABLE_SCHEMA = 'DB_NAME'
ORDER BY
a.TABLE_NAME, b.ORDINAL_POSITION
System Info.
PyCharm 2019.1 EAP (Community Edition)
Build #PC-191.6014.12, built on March 6, 2019
JRE: 11.0.2+159 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 7 6.1
R version 3.5.2 (2018-12-20)
Python 3.6.6
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
RStudio version 1.1.463