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