ray88’s diary

お仕事で困ったとき用の自分用の覚書

SQL 指南書集 目次

■達人によるSQLサポートページ

https://mickindex.sakura.ne.jp/database/db_support_sinan.html
■基本文法の応用

CASE文の応用

SQL指南書集_既存コードを新しい体系に変換して集計(CASE文応用)

SQL_指南書 異なる条件の集計を1つのSQLで行う (CASE文応用)

SQL指南書 CHECK制約で複数の列の条件関係を定義する(CASE文応用)

SQL指南書 条件を分岐させたUPDATE(CASE文応用)

SQL指南書 条件を分岐させたUPDATE(CASE文応用)② 

SQL指南書 テーブル同士のマッチング(CASE文の応用)

SQL指南書 CASE式の中で集約関数を使う(CASE文応用) 

■行→ 列 への変換
SQL指南書 複数列の最大値を求める 

SQL指南書 行持ちから列持ちへの水平展開

■ソート用列の作成

SQL指南書 ソート用の列を作成する(ORDER BY句にCASE式を使用)

■自己結合

SQL指南書 重複順列・順列・組み合わせ(自己結合)

SQL指南書 重複業の削除(自己結合)

SQL指南書 部分的に不一致なキーの検索(自己結合)

SQL指南書 ランキング(自己非等値結合)
■3値倫理とNULLの扱い

SQL指南書 3値倫理① NULLの扱い 

SQL指南書 3値倫理 ② unknown 

SQL指南書 比較述語とNULL① 非中律が成立しない

SQL指南書 比較述語とNULL② CASE式とNULL 

SQL指南書 比較述語とNULL③ NOT IN と NOT EXISTS は同値ではない

SQL指南書 比較述語とNULL④ 限定述語とNULL(ALLとANY)

SQL指南書 比較述語とNULL⑤ 限定述語と極値関数は同値ではない 

SQL指南書 比較述語とNULL⑥ 集約関数とNULL

■HAVING句の応用

SQL指南書 HAVING句① データの歯抜けを探す

SQL指南書 HAVING句② 最頻値を求める

SQL指南書 HAVING句③ 自己結合でメジアンを求める 

SQL指南書 HAVING句③の補足(SQL文詳細解説)

SQL指南書 HAVING句④ NULLを含まない集合を探す

SQL指南書 HAVVING句⑤ 関係徐算でバスケット解析 

SQL指南書 HAVING句⑥ まとめ -

■外部結合で行列変換

外部結合で行列変換① (行→列):クロス表を作る 

外部結合で行列変換② (列→行):繰り返し項目を1列にまとめる UNION ALL

外部結合で行列変換③ クロス表で入れ子の表側を作る 

SQL指南書 補足 直積とは

SQL指南書 外部結合⑤ 掛け算として結合 

SQL指南書 補足 主キーとインデックス

SQL指南書 補足 結合を掛け算として考える 

SQL指南書 外部結合⑥ 完全外部結合 

SQL指南書  外部外部結合⑦ 外部結合で差集合を求める

SQL指南書 外部結合⑧ 完全外部結合で排他的和集合を求める 

SQL指南書 外部結合⑨ 商集合(関係除算)

SQL指南書 外部結合 まとめ 

SQL指南書 外部結合⑩ 完全外部結合とMERGE文