MySQL에서 특정 데이터베이스에 포함된 테이블 이름을 확인하려면 SHOW TABLES 구문을 사용합니다. 기본 문법은 다음과 같습니다.
show tables from yourDatabaseName;
SHOW TABLES 실행 예제
실제로 위 쿼리를 실행하여 테이블 목록을 조회해 보겠습니다. 아래 예제에서는 'hb_student_tracker'라는 데이터베이스의 테이블 이름들을 가져옵니다.
mysql> show tables from hb_student_tracker;
쿼리를 실행하면 해당 데이터베이스에 존재하는 모든 테이블 이름이 표 형태로 출력됩니다.
+------------------------------+ | Tables_in_hb_student_tracker | +------------------------------+ | demotable192 | | demotable193 | | demotable194 | | demotable195 | | demotable196 | | demotable197 | | demotable198 | | demotable199 | | demotable200 | | demotable201 | | demotable202 | | demotable203 | | demotable204 | | demotable205 | | demotable206 | | demotable207 | | demotable208 | | demotable209 | | demotable210 | | demotable211 | | demotable212 | | demotable213 | | demotable214 | | demotable215 | | demotable216 | | demotable217 | | demotable218 | | demotable219 | | demotable220 | | demotable221 | | demotable223 | | demotable224 | | demotable225 | | demotable226 | | demotable227 | | demotable228 | | demotable229 | | demotable230 | | demotable231 | | demotable232 | | demotable233 | | insertcurrentdate | | reorderintegerexcept0 | | student | +------------------------------+ 44 rows in set (0.00 sec)
실행 결과를 보면 총 44개의 테이블이 조회되었으며, 각 테이블의 이름이 한 줄씩 출력됩니다. 출력 상단의 Tables_in_hb_student_tracker는 조회 대상 데이터베이스의 이름을 나타내는 컬럼 헤더입니다.
다른 방법: information_schema 활용하기
SHOW TABLES 외에도 information_schema를 조회하면 더욱 세밀한 조건으로 테이블 정보를 얻을 수 있습니다. 예를 들어 특정 데이터베이스의 테이블 이름만 정렬해서 확인하고 싶다면 다음과 같이 작성합니다.
SELECT table_name FROM information_schema.tables WHERE table_schema = 'hb_student_tracker' ORDER BY table_name;
이 방식은 테이블 생성일, 엔진 종류 등 추가 정보를 함께 조회할 수 있어 관리 작업 시 유용합니다.
참고 사항
먼저 USE 데이터베이스명;으로 해당 데이터베이스에 접속한 후 SHOW TABLES;만 입력해도 동일한 결과를 얻을 수 있습니다. 또한 조회 권한이 있는 계정으로 접속해야 테이블 목록이 정상적으로 표시됩니다.