MySQL에서 DESCRIBE와 DESC는 완전히 동일한 명령어입니다. DESC는 DESCRIBE의 축약형으로, 테이블에 대한 정보를 빠르게 확인할 때 사용됩니다.
DESCRIBE 명령어란?
DESCRIBE 명령어를 실행하면 테이블의 구조를 한눈에 파악할 수 있습니다. 구체적으로 다음과 같은 정보를 보여줍니다.
- 컬럼(Field) 이름
- 데이터 타입(Type)
- NULL 허용 여부
- 키(Key) 설정 여부
- 기본값(Default)
- 추가 속성(Extra)
SHOW COLUMNS와의 동일성
사실 DESCRIBE 명령어는 아래 명령어와 결과가 완전히 같습니다.
SHOW COLUMNS FROM yourTableName;
즉, 내부적으로 MySQL은 DESCRIBE를 SHOW COLUMNS 문으로 처리하기 때문에 두 명령어는 서로 대체 가능합니다.
DESCRIBE 사용 예제
다음은 Student 테이블의 정보를 DESCRIBE 명령어로 조회하는 쿼리입니다.
mysql> DESCRIBE Student;
여기서 Student는 데이터베이스에 생성된 테이블 이름입니다. 위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.
+-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | id | int(11) | YES | MUL | NULL | | | Name | varchar(100) | YES | MUL | NULL | | +-------+--------------+------+-----+---------+-------+ 2 rows in set (0.13 sec)
동일한 결과를 얻는 대체 쿼리
앞서 설명했듯이 SHOW COLUMNS 문을 사용해도 동일한 결과를 얻을 수 있습니다.
mysql> show columns from student;
실행 결과는 다음과 같습니다.
+-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | id | int(11) | YES | MUL | NULL | | | Name | varchar(100) | YES | MUL | NULL | | +-------+--------------+------+-----+---------+-------+ 2 rows in set (0.03 sec)
위 결과에서 확인할 수 있듯이, DESCRIBE와 SHOW COLUMNS 두 명령어 모두 동일한 출력을 반환합니다. 상황에 따라 편한 명령어를 선택해서 사용하면 됩니다.