0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MySQLのSELECT結果をExcelファイルに貼り付ける

Last updated at Posted at 2023-12-15

記事化するのもちょっと恥ずかしいただのExcelの一機能、、、でもこれを発見したときちょっと感動してしまったでご紹介。

Background

とあるシステムのデータベースをAmazon RDS for MySQLで構築・運用。
トラブルシューティングのための調査対応で、EC2インスタンスから mysql コマンドでDB接続しコマンドを実行。
記号と空白できれいに整形されたレコードセットは目で見る分には親切なものの・・・

+-------------------------------+-------------+-----------------+--------------+-----------+
| table_name                    | data_length | max_data_length | index_length | data_free |
+-------------------------------+-------------+-----------------+--------------+-----------+
| ar_internal_metadata          |       16384 |               0 |            0 |         0 |
| attachments                   |    74022912 |               0 |     36257792 |   7340032 |
| auth_sources                  |       16384 |               0 |        16384 |         0 |
| boards                        |       16384 |               0 |        32768 |         0 |
| changes                       |       16384 |               0 |        16384 |         0 |
| changeset_parents             |       16384 |               0 |        32768 |         0 |
...

Problem

記号と空白できれいに整形されたレコードセットをExcelファイルに貼り付けたい。

  • ふつうにコピー&ペーストはもちろんNG。
  • RDSはマネージドサービスなので select into outfile文によってサーバー上にファイルを書き出すわけにもいきません。
  • mysqlコマンドをバッチモードで利用して、SQL実行結果を含む標準出力をsedで加工しTAB区切りのテキストにしてからExcelに貼り付ける・・・ということも可能ですが、すでに目にしているものをすぐに利用できないのは悔しいです。
  • 言うまでもないことですが、こうしたアドホックなクエリ実行の一々についてDatePipelineやAthenaなど構築にも運用にもコストがかかるものを使いたくないです。

Solution

「テキストファイルウィザード」を利用する。

  1. リボンの「ホーム」タブ→「貼り付け」→ 「テキストファイルウィザードを使用」
    image.png

  2. ウィザード1/3で 「スペースによって右または左に揃えられた固定長フィールドのデータ」 を選択
    image.png

  3. ウィザード2/3で「データのプレビュー」を確認し、必要に応じて矢印を位置合わせ
    image.png

  4. ウィザード3/3で区切り文字など不要な列について「削除する」を選択
    image.png

  5. 横罫線に当たる部分は手作業で削除
    image.png

以上で、簡単&キレイにExcelのシートにクエリ実行結果が貼り付けられました🙌

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?