見出し画像

【たったのこれだけでいいの?】素人エンジニアが最前線の現場で、SQL文をどうやって蓄えてきたのか!!!

こんにちは、tangoです。
今回は、ド素人エンジニアであるtangoが、9か月間いた現場で手に入れたSQL文を紹介していこうと思います。

ぶっちゃけ入社当初は、SQL使えるの?って聞かれてもSQLってなに?って感じでした。
ですが、今となれば内部結合やサブクエリまで扱えるようになりました。
では、実際にどうやってそこまでの知識を付けることができたのか話していきたいとおもいます。


まず現場に入っての6か月時点では、全くSQLが分かりませんでした。
手順書にあったSQL文を打って作業するという日々でした。
ですが、ふと半年を振り返った時に、何も誇れる技術や経験がないということに気づきました。
そこから、SQLを勉強し始めました。
初めは基礎中の基礎である

select * from テーブル名;

select カラム名 from テーブル名;

から学んでいきました。

これで大体の作業はこなせるようにはなったんですが、それだけでは物足りなくなってしまい、次に各テーブル同士をくっつけて検索したくなったので、内部結合を勉強し実践で使っていきました。
基本的に使っていたコマンドは以下の2つです。

# 二つのテーブルを結合して表示
select * from テーブル名1 inner join テーブル名2 on テーブル名1.カラム名 = テーブル名2.カラム名;


# 結合させたテーブルで、指定したカラムを表示
select カラム名1, カラム名2 from テーブル名1 inner join テーブル名2 on テーブル名1.カラム名 = テーブル名2.カラム名;


最後は、【サブクエリ】を実践で使っていきました。
この【サブクエリ】に関してはたまたま出くわしたコマンドなんです。
取り出したい値を抽出するまでに、飛行機の乗り継ぎみたく、何個もテーブルを経由して、値を取り出してこないとあかん値もあり、経由するテーブルが多くなればなるほど、打つ回数も多くなり、めんどくさいと思っていました。
そんなある日、一の矢で取り出すことはできひんのかと思い調べたら【サブクエリ】と出会いました。このサブクエリなんですが、習得するのに結構時間がかかりました。

select * from テーブル名 where カラム名 in (select カラム名 from テーブル名 where カラム名 like "検索したい値");


たったの3つだけなんですが、この3つのSQL文が結構役にたちました。
たまに、as句を使ってカラム名を変更させたり、サブクエリと内部結合をミックスさしたコマンドを使って値をとってきたりとSQLの技術は格段に上がりました。
現在は、あまり使う機会がないので忘れてしまっているコマンドもありますが、10分あれば過去の記憶から引っ張ってくるので、すぐ使えるレベルにできます。
苦労して習得した分、めっちゃ自信がある技術です!!!

以上が、SQL文を習得するまでの動機の紹介になります。
最初は危機感からスタートしたんですが、いつの間にか楽しくなり夢中で調べていたらここまでの技術を身に着けることができました。

本日はこの辺で終わりたいと思います。
みなさんのエンジニアライフに少しでもお役に立てれば幸いです。
ありがとうございました。

・Twitter
https://twitter.com/tango3564

・Instagram
https://www.instagram.com/tango3690/