見出し画像

SQLフォーマッター、便利です。

とあるお仕事で、Access DBに埋め込んだクエリを解析するという所業をやっておりましたが、私、データベース屋さんとは程遠く、SQLはなんとなくレベル。

どこのDBのテーブルのどれから、どこぞのカラムと、別のテーブルのカラムを結合して、重複排除して、別のテーブルを生成して。。。。

みたいなことを30クエリほどこなしたのですが、

これがまた辛い。

INNER JOINてなに?IIFてなに?ASでつける別名てなに??

みたいな。

SELECT DISTINCTて、どんなSELECT?
ONとANDとSETが並んでるけど、どないUPDATEするん??

みたいな。

そんなこんなで、SQLは言語ですから、1行にびっしり詰まったSQL文をまずはインデントつけて意味の通じる形式に修正して、読解を始めること数時間。


これ、ツールあるんじゃね??


と思いたちググったらありました。

こちら。

適当に拾ってきたSQL分を例にしますが、

SELECT ID, URI_DATE, ITEM_CODE, NOF AS NOF_TWICE, TOTAL_AMOUNT AS TOTAL_TWICE FROM URIAGE_DAILY;

例えばこんなように1行になっている代物をこのサイトに貼り付けて「整形する」をクリックしますと、、、

画像1

こうしてくれます。

美しい。読める読める。

もう一つ、拾い物のSQLですが

select t.topic_id,t.thread_id,Max(t.topic_name),Max(t.topic_date),Max(e.element_write) from topic as t
left join element as e on (t.thread_id = e.thread_id) and (t.topic_id = e.topic_id) where t.thread_id = 3
group by t.topic_id,t.thread_id order by t.topic_date desc limit 0,20;

わりかし長いこやつを、「整形する」と、、、

画像2

こうです。

一瞬で可読性を手に入れた!


こうして無事、今日のお仕事をこなすことができましたとさ。

作者さんに感謝。


可読性は上がっても、読む知識を入れなきゃいけないので、結局それなりに時間はかかりましたとさ。

SQL勉強しときゃよかった〜

今から頑張るまする。

創作意欲の支えになります!