まずはSQLを作成する
コマンドラインで実行したいSQLを先に作成してしまいましょう。
ポイントは見出し行をカラム名のエイリアスで作成するところ。
SELECT id AS ID番号
,name AS 氏名
FROM table
ORDER BY 1 ASC;
次にmysqlコマンドを作成する
実際に試してみたんですが、パスワード指定がうまく行かなかったので --password=
オプション指定にしてます。
mysql -u username --password=pass -h hostname -P 3306 databasename -e "
SELECT id AS ID番号, name AS 氏名 FROM table ORDER BY 1 ASC;"
ちなみにパスワードを隠したい人は下記URLが参考になるかもです。
MySQLのコマンドラインで-pオプションを使わずにパスワードを指定する方法
(試してません)
MEMO
単純なSQL文ならファイルに保存して入力リダイレクトする方がメンテナンス性が上がるかもしれません。
mysql -u username --password=pass -h hostname -P 3306 databasename < select.sql
処理結果をリダイレクトしてファイルにする
コマンドを実行すると通常、表形式に整形された文字列が出力されます。
mysql databasename -e "SELECT * FROM hoge;"
+------+-----+
|ID番号|氏名 |
+------+-----+
| 1|阿部 |
| 2|伊藤 |
.....
これをリダイレクトするだけでタブ区切りのファイルにすることができます。
mysql databasename -e "SELECT * FROM hoge;" > result.txt
ID番号 氏名
1 阿部
2 伊藤