MySQLパズル

 サイト設立 2006年1月19日
  最終更新日 2022年4月12日


Joe Celko氏の著書[SQLパズル]の内容をふまえて構造化定理を意識しつつ、SQLパズルを解くサイトです。
MySQL5.0以降が対象です。


Qiitaへの投稿記事

SQLの間違い集2 MySQLのユーザ変数は評価順序が未定義
MySQL8.0のSQLの新機能について調べたこと


CodeZineの執筆記事(シーズン2)

CodeZineのMySQLの記事(シーズン2)の元原稿

MySQL8.0のWindow関数のサンプル集
MySQL8.0の再帰With句のサンプル集
MySQL8.0でSQLパズルの問題を解く


CodeZineの執筆記事(シーズン1)

MySQLで分析関数を模倣1 (前編)
MySQLで分析関数を模倣2 (中編)
MySQLで分析関数を模倣3 (後編)
MySQLで分析関数を模倣4 (完結編)
MySQLで分析関数を模倣5 (応用編)
MySQLでOracleのSQLを模倣1 (集合演算編)


1 基礎編

1-1 キルヒホッフの実証論
1-2 ブール代数
1-3 集合理論
1-4 構造化定理
1-5 3値論理
1-6 select文の評価順序


2 基本編

2-1 主に順次機能に相当

2-1-1 連続したnullチェック
2-1-2 和集合を作ってinsert
2-1-3 連続したスカラー問い合わせ
2-1-4 ソートでのnullの扱いを制御
2-1-5 集合演算でのnullの扱い

2-2 主に選択機能に相当

2-2-1 SQLでの条件分岐
2-2-2 case式とLike演算子

2-3 主に繰り返し機能に相当

2-3-1 モード(最頻値)を取得
2-3-2 階乗を求める


3 応用編

3-1 別テーブル優先の抽出
3-2 順位(DENSE)が指定した範囲のデータを取得
3-3 case式と集合関数


4 他サイト(@IT)のSQLパズル

4-1 文字の検索


5 他サイト(2ch)のSQLパズル

5-1 グループごとに最大値の行を取得


13 オリジナルなSQLパズル

13-1 履歴の最後以外の行をDelete
13-2 Find_In_Setでの他テーブルの参照


オートコンプリート
MySQLメモ


関連姉妹サイト

C#のサンプル集
JavaScriptのサンプル集
PHPのサンプル集