SQL 整形ツール 美しいコードが出力できるテキストエディタはどれ?
  • facebookページ
  • twitterページ
  • 2019.10.13

    SQL 整形ツール 美しいコードが出力できるテキストエディタはどれ?

    オフラインで使えるSQL整形ツールを比較しました。

    開発現場では、オフラインで使えるSQL整形ツールが求められることがあります。今回は、VisualStudioCode、秀丸エディタ、SAKURAエディタのプラグインやマクロを使ったSQL整形について比較してみます。

    なお、整形対象のSQLには、以前紹介したオンラインSQL整形ツール「Instant SQL Formatter」のサンプルSQLを使用します。

    ギッチリと1行につめ込まれた、関数やサブクエリが入り混じった複雑極まるSQLです。

    【関連記事】
    SQL formatter オンラインで使える無料整形ツール 3選

    オフラインSQL整形ツールの比較

    visual studio codeはPL/SQLモードが優秀

    マイクロソフト社製のソースコードエディタです。無料でダウンロードして使用可能です。

    参考)Visual Studio Code – コード エディター 公式サイト

    今回は、マーケットプレイスのSQL Formatterを使います。

    参考)SQL Formatter – Visual Studio Marketplace

    サンプルSQLを整形します。エディタ上でALT+SHIFT+Fで整形できます。

    結果は、こうなりました。

    これはひどい。selectの後ろに改行が入っただけです。

    ところが、設定を少し変えるだけで見違える結果が出ます。

    Ctrl+SHIFT+Xで拡張機能一覧を呼び出し、SQL Formatterの「拡張機能の設定を構成します」から、pl/sqlを選んで、再度SQL整形を実行します。

    1行が長くなりそうな関数では適度に改行を入れ、サブクエリも見やすく整形するなど、非の打ち所がない整形結果です。

    PL/SQLモードをデフォルトにすれば良いのでは、と思うほどの出来のよさ。

    秀丸エディタは、行頭にカンマが来る

    秀丸エディタには、作者の秀まるおさんご本人が作成した、SQL整形プラグインがあります。

    秀まるおのホームページ(サイトー企画)-SQL整形

    「変換フィルタ」としてインストールし、メニューの編集→変換→SQL整形から実行します。

    実行結果はこちら。

    とても見やすいのですが、行頭にカンマが来るのは、好みが別れるところでしょう。

    SAKURAエディタは、多重カッコの整形がやや苦手

    SAKURAエディタには、「定番」と言われるレベルの有名なSQL整形マクロはありませんでした。

    比較的新しい、こちらのマクロで整形してみます。

    参考)SakuraEditorマクロでXML/JSON/CSS/SQLを整形するよ – Qiita

    キーマクロとして読み込み、キーマクロの実行(Shift+Ctrl+L)で整形実行です。

    整形結果はこうなりました。

    「SELECT」や「FROM」などのキーワードを大文字化する点と、関数で使われる多重カッコを展開しすぎる点が気になりますが、整形品質としては充分でしょう。

    ただ、個人の方がサンプル的に作成されたものなので、毎回整形種別(XML / JSON / CSS / SQL)を聞かれるなど使い勝手が良くない点もあります。

    とは言っても、シンプルなコードで作られているため、好きなようにカスタマイズするのも難しくはないでしょう。

    サクラエディタユーザにとっては、非常にありがたい情報です。

    まとめ SQL整形ツールはVSCODEが優秀

    複雑なSQL整形に強いのはVisual Studio Codeでした。

    ポテパンダの一言メモ
    • visual studio codeは、PL/SQLで使うと整形性能が優秀
    • 秀丸エディタは、カンマが行頭に来る
    • サクラエディタは、多少気になる点はあるが及第点

    とは言え、秀丸エディタ、サクラエディタが極端に劣っているというわけでもありません。手に馴染んだテキストエディタにSQL整形機能を持たせたいというあなたは、チェックしてみてください。



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE