MySQL에서 데이터베이스 내 가장 최근에 생성된 테이블의 이름과 생성 시간을 확인하려면 information_schema.TABLES를 활용하면 됩니다. 이 시스템 뷰에는 테이블 이름, 생성 시간, 업데이트 시간 등 다양한 메타데이터가 저장되어 있어, CREATE_TIME 기준으로 내림차순 정렬한 후 첫 번째 행만 가져오면 가장 최근에 만들어진 테이블 정보를 얻을 수 있습니다.
기본 문법
SELECT table_name, create_time FROM information_schema.TABLES WHERE table_schema = 'yourDataBaseName' ORDER BY CREATE_TIME DESC LIMIT 1;
실습 예제
먼저 첫 번째 테이블을 생성해 보겠습니다. (생성 시간: 2019-06-10 16:40:51)
mysql> create table DemoTable1
-> (
-> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> StudentName varchar(100),
-> StudentAge int
-> );
Query OK, 0 rows affected (0.59 sec)이번에는 약 5분 후에 두 번째 테이블을 생성합니다.
mysql> create table DemoTable2
-> (
-> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> StudentName varchar(100),
-> StudentAge int
-> );
Query OK, 0 rows affected (0.59 sec)이제 MySQL에서 가장 최근에 생성된 테이블(즉, DemoTable2)의 생성 시간을 조회해 보겠습니다.
mysql> select table_name, create_time
-> from information_schema.TABLES
-> where table_schema = 'web'
-> order by CREATE_TIME desc
-> limit 1;실행 결과
+--------------+---------------------+ | TABLE_NAME | CREATE_TIME | +--------------+---------------------+ | demotable2 | 2019-06-10 16:45:51 | +--------------+---------------------+ 1 row in set (0.01 sec)
결과를 보면 DemoTable2가 가장 최근에 생성된 테이블이며, 생성 시간은 2019-06-10 16:45:51로 확인됩니다. LIMIT 1을 제거하면 해당 데이터베이스의 모든 테이블을 생성 시간 순으로 정렬하여 볼 수도 있습니다.