MySQLで多数のカラムを含むSELECT結果をターミナルで見やすく表示する最良の方法とは?
はじめに
MySQLのターミナルでSELECT * を実行した際、テーブルに多くのカラムが存在すると、結果が横方向に長く表示され、非常に読みにくくなることがあります。このような場合に便利なのが、クエリ末尾に付ける \G オプションです。
\Gを使った縦表示の基本構文
結果を縦方向(垂直)に表示するには、以下のように通常のセミコロンの代わりに \G を指定します。
select * from テーブル名\G;
ここで \G を付けると、各行が「カラム名: 値」の形式で1行ずつ縦に展開されて表示されるため、ターミナルの幅を超えても内容が確認しやすくなります。
実際に試してみよう
1. サンプルテーブルの作成
まず、CREATEコマンドを使って動作確認用のテーブルを作成します。以下はテーブル作成のクエリ例です。
mysql> create table TooManyFieldsreturnDemo -> ( -> Id int, -> Name varchar(100), -> Age int -> ); Query OK, 0 rows affected (0.64 sec)
2. レコードの挿入
続いて、INSERTコマンドでサンプルデータを挿入します。以下のクエリを実行します。
mysql> insert into TooManyFieldsreturnDemo values(1,'John',21); Query OK, 1 row affected (0.19 sec) mysql> insert into TooManyFieldsreturnDemo values(2,'Johnson',22); Query OK, 1 row affected (0.15 sec) mysql> insert into TooManyFieldsreturnDemo values(3,'Sam',23); Query OK, 1 row affected (0.10 sec) mysql> insert into TooManyFieldsreturnDemo values(4,'Carol',24); Query OK, 1 row affected (0.14 sec) mysql> insert into TooManyFieldsreturnDemo values(5,'David',25); Query OK, 1 row affected (0.12 sec)
3. \Gを指定してSELECTを実行
準備ができたら、冒頭で紹介した構文を適用してみましょう。実行するクエリは以下の通りです。
mysql> select *from TooManyFieldsreturnDemo\G;
出力結果
実行すると、次のように各レコードが縦方向に整形されて表示されます。
*************************** 1. row *************************** Id: 1 Name: John Age: 21 *************************** 2. row *************************** Id: 2 Name: Johnson Age: 22 *************************** 3. row *************************** Id: 3 Name: Sam Age: 23 *************************** 4. row *************************** Id: 4 Name: Carol Age: 24 *************************** 5. row *************************** Id: 5 Name: David Age: 25 5 rows in set (0.00 sec)
まとめ
このように、クエリの最後に \G を付けるだけで、多くのカラムを持つSELECT結果でも見やすい縦表示に切り替えることができます。ターミナル上でのデータ確認作業が格段に楽になるので、ぜひ日常的に活用してみてください。
-
MySQLでデータベース内のテーブル数を表示するクエリの書き方
INFORMATION_SCHEMA.TABLESを使ってテーブル数を取得するここでは例として、「WEB」というデータベースを使用しているものとします。このデータベース内に存在するテーブルの総数を調べたい場合、MySQLではINFORMATION_SCHEMA.TABLESを利用するのが便利です。INFORMATION_SCHEMAは、MySQLサーバーが管理しているメタデータ(データベース名、テーブル名、カラム情報など)を格納する仮想データベースであり、これを参照することでスキーマに関する情報をSQLで簡単に取得できます。テーブル数を表示するクエリ「WEB」データベース内のテーブル数を表示す
-
MySQLでテーブルのすべてのフィールド(カラム)を表示する方法
MySQLで特定のテーブルに含まれるすべてのフィールド(カラム)名を確認したい場合、information_schema.columns テーブルを利用する方法が便利です。table_schema にデータベース名、table_name に対象のテーブル名を指定することで、そのテーブルの全フィールドを一覧表示できます。基本の構文以下の構文を使うことで、指定したテーブルのすべてのカラム名を取得できます。select column_name as anyAliasName from information_schema.columns where t