出所を決める
FROMは処理対象の表・結果を指定する。
SQLを“何を書くか”ではなく、“データがどう変わるか”から理解する。Snowflake / BigQuery を切り替えて、同じ概念を同じ順序で確認できる。
SELECTによる検索・分析の基本構文を扱います。目的か構文名で探し、同じ入力で結果を比較してください。
FROMは処理対象の表・結果を指定する。
WITHとFROM内のsubqueryは、同じ中間結果を表現できる。
一致 / 左を全部 / 両方を全部 / 全組み合わせ。
LEFT JOINでは条件を置く場所で残る行が変わる。
複合値の要素を取り出し、行数を増やす。
WHERE=集計前、HAVING=集計後、QUALIFY=window後。
COUNTは何を数えるか、他の集約は何を求めるかで選ぶ。
GROUP BYは集約単位を作り、DISTINCTは選んだ列全体の重複を消す。
Aggregate=N行→グループごとに1行。Window=N行→N行。
連番 / 同順位で次を飛ばす / 同順位で次を詰める。
同じ順序で前後の値を各行に付ける。
ROWSは行位置、RANGEは並べ替え値で範囲を決める。
比較はTRUE / FALSE / NULLを返し、論理演算で組み合わせる。
NULLとの等号比較は不明になる。IS NULLで判定する。
CASEは複数条件、IF / IFFは二択を簡潔に書ける。
変換できない値:CASTはエラー、安全版はNULL。
ABSは絶対値、ROUNDは指定桁への丸め。
同じ文字列に4種類の操作を当てる。
日付の作用は共通。引数の順番と単位の置き方が違う。
見た目が7でも、返る型が違う。
同じA・Bで、重複を保持 / 除去 / 共通 / 左だけを比較する。
位置が違っても、同じ列名を対応させる。
重複を消す → 並べる → 先頭を飛ばす → 件数を取る。