LoginSignup
16
7

More than 5 years have passed since last update.

mysqlコマンドのSELECTで枠線を非表示するsilentオプション

Last updated at Posted at 2017-10-31

MySQLではmysqlコマンドでSELECT文を発行すると枠線をつけて結果を出力してくれる。このように:

❯ mysql -uroot mydb -e 'SELECT id FROM mytable'
+----+
| id |
+----+
|  1 |
|  2 |
|  3 |
+----+

出力を眺めるだけならこれで問題ない。しかし、出力結果をシェルスクリプトで処理するような場合はもっとシンプルな出力が理想的。

出力から枠線を消すオプションに--silentがある。

❯ mysql -uroot mydb -e 'SELECT id FROM mytable' --silent
id
1
2
3

更にヘッダ行も不要な場合は--skip-column-namesオプションをつけると良い。

❯ mysql -uroot mydb -e 'SELECT id FROM mytable' --silent --skip-column-names
1
2
3

どちらのオプションも短縮形で指定することもできる。--silent-s--skip-column-names-Nになる。

❯ mysql -uroot mydb -e 'SELECT id FROM mytable' -sN
1
2
3

ちなみにSELECT文をシェルのforで回すときは次のように書ける。

for ID in $(mysql -uroot mydb -e 'SELECT id FROM mytable' -sN)
do
 echo "id ... $ID"
done
出力結果
id ... 1
id ... 2
id ... 3
16
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
7