SQL
例は sakila サンプル DB(MySQL)を対象にしている。 評価順(FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY)の順に並べた。
- FROM 句 / JOIN — INNER JOIN する順番、OUTER JOIN をいつ使うか
- WHERE 句 — インデックス、NULL、NOT IN、EXISTS
- GROUP BY — 評価順、集計、書き方による実行時間の違い
- HAVING 句 — GROUP BY の結果で絞り込む
- SELECT 句 — カラム指定、エイリアス、DISTINCT、COUNT、COALESCE
- ORDER BY — 並べ替えとランダム
- WITH (CTE・再帰) — 一時テーブル、階層構造の展開
- 集計関数 — 複数の集計を1クエリで取る
- ウィンドウ関数 — ROW_NUMBER、LAG/LEAD、累計、ランキング
- 日付および時間関数 — 年・年月・四半期・月末の作り方
- CASE 式 — 分類して集計する
- INSERT — VALUES 指定と他テーブルからの指定
- UPDATE — 既存の値を元にする
- DELETE / TRUNCATE — 全件削除するときの違い