SQLの本を見ますとかなり複雑なSQLが書かれていることが多いです。
これは頑張っても無理では・・・と思っていましたが、ポイントしては
- 原則として必ず図に書く
- まずは問題を細かく分割する
- 細部から切り分けて部分を組み立てる(多くの場合SELECTで細かいテーブルに分ける)
- 出力対象が値か単行か表をチェック
- 変数がきつい場合はまず具体値で試す
- それを組み合わせていく
こんな感じでしょうか。確かに私も実務でちょっと複雑なSQLを書いたときは図に書き出してやったところ問題点がすぐにつかめました。
困難は分割せよ、どんな学習もコツは同じですね。
本日新しく覚えたSQL構文
SIGN()
引数が正の数ならば1を返し、マイナスの数ならば-1を返す。同じ場合や文字は0を返す。
rows between ウィンドウ開始点 and ウィンドウ終了点
分析関数。開始点と終了点を記して、その中での集計を行う。