SQL 探偵 - データベースパズル

このゲームについて

SQL 探偵はデータベースの検索をブロック並べパズルにした作品です。事件の手記はひと言だけ。容疑者・盗まれた品・訪問記録のテーブルがならび、列名とテーブル名は本物の SQL とおなじ英語、行のデータは emoji と数字と短い英名なので、五つの言語でそのまま遊べます。SELECT、FROM、WHERE、AND や OR、ORDER BY、LIMIT のブロックをトレーからタップやドラッグで二行のクエリ欄に並べ、実行を押すと、はじかれる行が灰色に沈み、答えの行が琥珀色に光ります。ページ内の実行部品はビルド時の検証とおなじ SQL のサブセットで、24 の事件と 365 の毎日シードについて、基準クエリがただひとつの答えへ到達すること、条件をひとつ外すと答えがにじむこと、もっと少ないブロック数に正解が存在しないことを証明済みです。星はブロック数の二重基準、基準以下で三つ、二つぶん多くまで二つ、解決で一つ、誤った行を三回タップすると一つ止めになります。四つの章で単一フィルタ、条件のかけ合わせ、並べ替えと最上位、集計と二枚テーブルのつなぎ方を学びます。UTC 0時に毎日新しい一案がひらき、星とブロック数だけを書いた共有カードが出せます。長い文章を捜る探偵ゲームとはちがい、このゲームは構造化データの上だけで真犯人を絞り込みます。

遊び方

トレーのブロックをタップかドラッグでクエリ欄に並べ、実行を押します。行で答える事件は結果の行をタップ、件数や数値の事件は一致した時点で自動解決します。ブロックが少ないほど星が増えます。

コツとテクニック

  • 上のバーが基準ブロック数を教えてくれます。三つめの星は基準以下かつ結果が答えだけの条件です。
  • 結果にほかの容疑者が残ると星は一つ、条件を足して狭めましょう。
  • 二枚テーブルの事件は先に二枚目を引き、出てきた id が新しいブロックになります。
  • LIMIT は ORDER BY の直後でないと使えません。ソートしてから最上位を取りましょう。

よくある質問

SQL の知識は必要?

いりません。キーワードは全部ブロックに入っていて、各章のはじめの 2 事件は三步ガイドつき。遊び終わると、ブロックの並び順がそのまま本物の SQL の読み順だと気づきます。

毎日事件はどう検証されているの?

24 事件と 365 日のシードはビルド時にページ内と同じ実行部品で走らせ、基準クエリの唯一到達、条件を一つ外したときのぼやけ、少ないブロック数での近道の不存在を検査しています。

もっとゲームを

パズル →