MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのLIKE演算子を使って特定のテーブル名を表示する方法

MySQLでは、information_schema.tablesを参照することで、データベース内のテーブル名一覧を取得できます。さらにLIKE演算子を組み合わせれば、特定のパターンに一致するテーブル名だけを抽出して表示することが可能です。

基本の構文

LIKE演算子を使用して特定のテーブル名を表示するには、以下の構文を使います。

SELECT table_name AS `任意の別名`
    FROM information_schema.tables
WHERE table_name LIKE '検索したい値%';

この構文のポイントは以下のとおりです。

  • table_name AS `別名`:出力時のカラム名をわかりやすい別名に変更できます。
  • information_schema.tables:データベース内のすべてのテーブル情報を管理しているシステムテーブルです。
  • LIKE '値%':「%」は任意の文字列に一致するワイルドカードです。指定した文字列で始まるテーブル名がすべて抽出されます。

実行例

それでは、実際に上記の構文を使って、特定のテーブル名を表示してみましょう。

mysql> SELECT table_name AS `DemoTable1600`
    -> FROM information_schema.tables
    -> WHERE table_name LIKE 'DemoTable160_%';

このクエリでは、「DemoTable160_」で始まるテーブル名を検索しています。末尾の「_」は任意の1文字に一致するワイルドカードのため、「DemoTable1600」「DemoTable1601」のように続くテーブル名が対象になります。

実行結果

上記のクエリを実行すると、以下のような出力が得られます。

+---------------+
| DemoTable1600 |
+---------------+
| demotable1600 |
| demotable1601 |
| demotable1602 |
| demotable1603 |
| demotable1604 |
| demotable1605 |
| demotable1606 |
| demotable1607 |
+---------------+
8 rows in set (0.01 sec)

このように、パターンに一致した8件のテーブル名が一覧で表示されました。実行時間も0.01秒と短く、効率的にテーブル名を検索できていることがわかります。

まとめ

information_schema.tablesとLIKE演算子を組み合わせることで、大量のテーブルが存在するデータベースでも、目的のテーブル名を素早く絞り込んで確認できます。テーブル名の管理や調査の際にぜひ活用してみてください。

  1. JavaのPreparedStatementを使ってMySQLテーブルを更新する方法

    JavaからMySQLのテーブルを更新するには、PreparedStatementを使用するのが一般的で安全な方法です。PreparedStatementを使うことで、SQLインジェクションを防ぎつつ、パラメータを動的に設定できます。この記事では、実際にテーブルを作成し、Javaプログラムからレコードを更新するまでの一連の手順を解説します。1. テーブルの作成まず、MySQLで更新用のテーブルを作成しましょう。mysql> create table DemoTable( Id int, FirstName varchar(40) ); Query OK, 0 rows a

  2. MySQLでDEFAULTキーワードを使ってデフォルト値を設定したテーブルを作成する方法

    MySQLでは、テーブル作成時にカラムのデータ型の後にDEFAULTキーワードを指定することで、そのカラムにデフォルト値を設定できます。INSERT文で値が指定されなかった場合、自動的にこのデフォルト値が適用されます。テーブルの作成例それでは、実際にデフォルト値を持つテーブルを作成してみましょう。mysql> create table demo33 -> ( -> id int not null auto_increment primary key, -> name varchar(20) not null, -> start_date date default(