MySQLでデータベース内のテーブル名一覧を取得する方法
MySQLでデータベースに存在するテーブル名の一覧を取得したい場合は、SHOW TABLESステートメントを使用します。SQLクライアントやコマンドラインから手軽に実行でき、指定したデータベース内の全テーブルを簡単に確認できます。
基本構文
テーブル名を取得するための基本構文は以下のとおりです。
show tables from yourDatabaseName;
yourDatabaseName の部分に、対象となるデータベース名を指定してください。
実行例
それでは、サンプルデータベース「hb_student_tracker」に対して実際にクエリを実行し、テーブル名を取得してみましょう。
mysql> show tables from hb_student_tracker;
出力結果
クエリを実行すると、指定したデータベースに含まれるすべてのテーブル名が一覧形式で表示されます。
+------------------------------+ | Tables_in_hb_student_tracker | +------------------------------+ | demotable192 | | demotable193 | | demotable194 | | demotable195 | | demotable196 | | demotable197 | | ...(中略)... | | insertcurrentdate | | reorderintegerexcept0 | | student | +------------------------------+ 44 rows in set (0.00 sec)
この例では、44件のテーブルが存在していることが確認できます。実行時間も 0.00 sec とわずかであり、非常に高速に結果を取得できることがわかります。
補足:information_schemaを使った方法
より柔軟にテーブル情報を取得したい場合は、information_schema データベースを参照する方法も便利です。以下のように SELECT文 を使ってテーブル名を抽出できます。
SELECT table_name FROM information_schema.tables WHERE table_schema = 'yourDatabaseName';
この方法では、条件を追加して特定のパターンに一致するテーブルだけを絞り込んだり、他のテーブルと結合して詳細情報を取得したりすることも可能です。用途に応じて SHOW TABLES と使い分けるとよいでしょう。
-
MySQLで別テーブルのIDからユーザー名を取得する方法|JOINの使い方を徹底解説
MySQLでは、別々のテーブルに保存されたデータをIDをキーに関連付けて取得したい場面が多くあります。そのような場合にはJOIN(内部結合)を使うことで、複数のテーブルを結合し、目的のユーザー名を簡単に取り出すことができます。 本記事では、実際にサンプルテーブルを作成しながら、JOINクエリの書き方をステップごとに解説します。 1つ目のテーブル「demo77」を作成する まず、ユーザーID(userid)とユーザー名(username)を格納するテーブルを作成します。useridは主キーとして設定します。 mysql> create table demo77 -> (
-
PythonとMySQLでデータベースからテーブルを削除する方法【DROP TABLE文の使い方】
データベースからテーブル全体を削除する必要が生じる場合があります。不要になったデータをデータベースに残しておくのは、ストレージの無駄につながります。たとえば、データベースに「Employees」というテーブルがあり、何らかの理由でそのテーブルが不要になったとしましょう。このような場合は、不要となったテーブルを削除してしまうのが最善の対応です。テーブルの削除には「DROP TABLE」コマンドを使用します。このコマンドを実行すると、データベースからテーブル全体が完全に削除されます。構文DROP TABLE table_nametable_name の部分には、削除したいテーブルの名前を指定します