おつおつー^^
仕事中にたまたま見つけたhyの366日にハマってコーディングしていたらいつの間にか業務終了を迎えました!
サックスと沖縄というのが叔母を思い出します。
歌詞はなんかコテコテの失恋ソングでなんか過去のことを思い出したのかとか変な憶測が飛びそうですが全くそんなことないからな(誰かさんに向けて)
まぁでも、ないと思うけど万が一そんなことが起きたらこの曲思い出すんだろうなーなんて^^;
そんな私情はどうでもいいですね、今日はDB/SQLについてなのですが本を読みこんで勉強といよりどんなことをこれから勉強していけばいいのだろうというところをある目標のもと調べました!
会話に入れず仕事が回ってこないを打開!ベテランの会話に混じれるようになるには!?
最近、ベテランに囲まれDBやSQLに関係する仕事をしているのですが話についていけないことが多く、ほかの作業をしている現状。組織の中でできるだけ中心にいたい私にとって、とても疎外感を感じ早くベテランになりたいななんて日々考えているのですが全く手の付けようがない。ということで思い切ってこのようなテーマを掲げ本日は調べていこうと思います。
さっそく調べていこうということなのですが、ここで私の人生経験をあてにしてこういう調べ方にしましょう。テーマを「ベテランのギャップを埋めるには」にスイッチして、ベテランノウハウについてまとめます。
ベテランノウハウとは
もう時間ないんで簡単にまとめます。情報源は私が現場で見たもの感じたもの。いいんですよもうこれで...とりあえず勉強したいから...
もしこれをみて足りねえよとか間違ってるよとかあって知り合いの方が見てらしたら連絡ください笑
とりあえずこれを正として今回は箇条書きの下2つに絞りましょう。
そもそも箇条書きの内容はどういうことか⇒具体的に何をすればいい?
時間ないからもういろいろ分けずに最後の結論までもっていこうと思います笑
箇条書きの真ん中「様々な構文をカスタマイズして最適化」、これはどういうことかというとDBからデータ取得するとき複雑なデータを取得しなければいけないことやできるだけ速くexecuteできる方法を模索しないといけないときがありますね必ず。そういうときにsqlをカスタマイズして最適化する必要が出てくるためそれを調べるところから始めるのではなくすでにノウハウとしてストックさせておく必要があります。ほかの方にいい方法ありませんかねとかいまから調べますだともう会話にはついていけないわけですわ(自分)。あと箇条書き最後の「ソフトウェアの仕様を理解している」については、会話していてアップグレードして追加された機能知らないであったりmySQLの知識のままoracleの話をしているとなんとなく会話に差が生じてしまいますよねというちょっとした悲劇です。会話に差が出てしまう時点でやっぱり会話には入りづらくなってしまう、だから知識としてストックしておく必要があります。
じゃあこれらの課題はどうすれば解決できるのか。ここでやっと調べもの開始です笑
調べてみた結果以下に収束させました(不時着)
- 複雑なデータを取得する
⇒sqlの中級者レベルの本を読む
例)達人に学ぶ SQL徹底指南書 - sqlを速くする
⇒DB/SQLの性能問題の調査の記事を読めばいい
⇒sqlチューニングとsqlパフォーマンスで検索! - ソフトウェアのsqlに関する仕様を理解する
⇒あらかじめ相違点を明らかにしておき、①や②を勉強しているときに合わせてノウハウとして蓄積
いやーすごいざっくり笑
しかもちょっと調べればすぐわかりそうなことだらけ笑
19時くらいからやり始めてこれくらいかと思うとすごいなんか無能っぷりさらけ出してて辛いな...
自分の場合まずは基本的なところから勉強しないといけないけど、なんとなく明日の業務には知識付けとかないといけないし明日もDBについての記事書こうかなーなんて思ったり。
あー眠い。
最後に恒例のまとめきれなかったものを備忘録として挙げていきます。
【備忘録~カスタマイズ構文~】
- 副問い合わせ(サブクエリ)
- 並び変え(orderby)
- join
- group by、having
- ソート
- カスタマイズする構文の記載順序
【備忘録~サイト~】
DB/SQL の性能問題を調査時のお話
https://qiita.com/abe_masanori/items/1a2b9c1f1069c43237f8
図でイメージするoracleDatabaseのsql全集
https://blogs.oracle.com/otnjp/oracle-sql-image-index