PR

mysqlコマンドのSQL実行結果から枠線と列名を非表示にする方法

スポンサーリンク
MySQL

MySQLでスクリプトからmysqlコマンドでSQLを実行する際などに、実行結果の枠線や列名が不要な時があります。

mysqlコマンドには、枠線や列名を非表示にするオプションがあるので、オプションを使った時のSQL結果表示について記載します。

デフォルト表示

オプションを何も付けずにmysqlコマンドで接続すると以下の表示になります。

[root@cent76 ~]# mysql -u root -p

mysql> select * from dekien.sampletbl;
+------+------------+
| no   | name       |
+------+------------+
|    1 | hogetaro   |
|    2 | hogejiro   |
|    3 | hogesaburo |
|    4 | hogeshiro  |
|    5 | hogegoro   |
+------+------------+

枠線を非表示にする

-s オプションを付けると枠線が無くなります。

[root@cent76 ~]# mysql -u root -p -s

mysql> select * from dekien.sampletbl;
no      name
1       hogetaro
2       hogejiro
3       hogesaburo
4       hogeshiro
5       hogegoro

列名を非表示にする

-N オプションを付けると枠線が無くなります。

[root@cent76 ~]# mysql -u root -p -N

mysql> select * from dekien.sampletbl;
+------+------------+
|    1 |   hogetaro |
|    2 |   hogejiro |
|    3 | hogesaburo |
|    4 |  hogeshiro |
|    5 |   hogegoro |
+------+------------+

枠線も列名も非表示にする

-s オプションと -N オプションを併用すれば、枠線も列名も無くなります。

[root@cent76 ~]# mysql -u root -p -s -N

mysql> select * from dekien.sampletbl;
1       hogetaro
2       hogejiro
3       hogesaburo
4       hogeshiro
5       hogegoro

枠線も列名も非表示にして、コマンドラインから直接実行

SQLプロンプトを使用せずに実行する場合は、-e オプションを付けて以下のように実行します。

[root@cent76 ~]# mysql -u root -p -s -N -e "select * from dekien.sampletbl;"
Enter password:
1       hogetaro
2       hogejiro
3       hogesaburo
4       hogeshiro
5       hogegoro

枠線も列名も非表示にして、SQLファイルを実行する

SQLファイルを別で用意して読み込ませるには、以下の方法で実行します。

[root@cent76 ~]# cat test.sql
select * from dekien.sampletbl;
[root@cent76 ~]# mysql -u root -p -s -N < ./test.sql
Enter password:
1       hogetaro
2       hogejiro
3       hogesaburo
4       hogeshiro
5       hogegoro