MySQLで最近作成されたテーブルの作成日時を取得する方法
MySQLでは、information_schema.TABLES を参照することで、データベース内の各テーブルの作成日時を簡単に確認できます。最近作成されたテーブルの作成日時を取得するには、以下の構文を使用します。
select table_name, create_time from information_schema.TABLES where table_schema = 'yourDataBaseName' order by CREATE_TIME desc limit 1;
サンプルテーブルの作成
まず、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分後に2つ目のテーブルを作成します。
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)
最新のテーブル作成日時を取得する
次に、最も新しく作成されたテーブルの作成日時を取得します。この例では、直近に作成された「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」であることが確認できました。order by CREATE_TIME desc で作成日時の降順に並べ替え、limit 1 で先頭の1件だけを取得することで、最近作成されたテーブルの情報を効率的に取り出せます。なお、table_schema の部分には、対象とするデータベース名を指定してください。
-
MySQLでテーブルの最初と最後のレコードを取得する方法【UNIONとLIMIT活用】
MySQLで最初と最後のレコードを取得する基本手法MySQLでテーブルの最初のレコードと最後のレコードを同時に取得したい場合は、UNIONを使用します。UNIONは複数のSELECT文の結果を結合する構文で、「昇順で並べ替えた先頭1件」と「降順で並べ替えた先頭1件」を組み合わせることで、最初と最後のレコードを一度に取り出せます。また、LIMIT句を使うことで、取得するレコード数を指定できます。サンプルテーブルの作成まず、動作確認用のテーブルを作成しましょう。mysql> create table DemoTable694 ( EmployeeId int NOT NULL AUTO
-
MySQLで最後に作成されたテーブル名(最新)を取得するクエリの書き方
INFORMATION_SCHEMA.TABLESを使って最新のテーブル名を取得する方法MySQLで「最後に作成されたテーブル」の名前を取得したい場合は、INFORMATION_SCHEMA.TABLESを利用します。この情報スキーマには、データベース内のすべてのテーブルに関するメタデータ(テーブル名、作成日時など)が格納されており、create_timeで並べ替えることで、最新のテーブルを簡単に特定できます。ここからは、実際にサンプルテーブルを作成し、最新のテーブル名を取得する手順を見ていきましょう。1. サンプルテーブルの作成まず、今回の例で使うテーブルを作成します。このテーブルが「最新の