SQL パズル(エスキューエル パズル)
プログラミングが変わる書き方/考え方
- 著者:
- ジョー・セルコ/ミック(セルコ,ジョー/ミック)
- 出版社:
- 翔泳社
- 出版日:
- 2007年11月
- ISBN:
- 9784798114132
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
本書では、“ほかに類を見ない”高度な SQL プログラミングテクニックを、全 75 問の楽しいパズルを通じて解説する。パズルの主な題材は販売管理や売上ランキング、財務計算といった日常業務からとられ、標準規格 SQL-89 / 92 / 99 ベースの解答 SQL 文は非常に実践的。斬新なアイデアと知的な魅力にもあふれている。また、紹介されるテクニックは RDB の本質である集合論/集合演算をしっかり踏まえたもので、身に付いたコーディングスキルは幅広く応用が効く。現場の DB エンジニアやアプリケーション開発者に必携の 1 冊。
技書の森解説
ジョー・セルコは SQL の理論と実践の両面で著作を重ねてきた人物で、本書はその名の通り、 SQL を使って解くパズル集です。単純な SELECT 文では太刀打ちできない問題 - 欠番探し、行の連続区間検出、階層構造の走査、集合としてのデータ操作 - が次々と提示され、読者は SQL だけで解法を組み立てることを求められます。
本書が求める前提は「基本的な SQL は書ける」ことであり、 JOIN や GROUP BY を日常的に使えるレベルから先に進みたい人のための本です。各パズルには複数の解法が示され、なぜそのアプローチが有効なのか、集合論やリレーショナルモデルの考え方に立ち返って解説されます。この過程を通じて、手続き型の発想を捨て、宣言型でデータを操作する思考回路が鍛えられていきます。
難易度は高く、一問に何時間もかかることもあります。仕事で即使えるレシピ集ではなく、 SQL の表現力の限界を探る知的格闘の場です。実務で複雑なクエリを書く機会が多い人、あるいは SQL を武器として研ぎ澄ませたい人にとって、手応えのある鍛錬の書です。
言及 Qiita 記事 (41 件)
SQL:ユーザーごとに最新レコードが欲しい
♡ 6SQL, db2, 初心者, Database技術書 読んだ順番を振り返ってみた
♡ 6C#, SQL, 技術書非エンジニア向けSQLの基礎
♡ 6SQL, 非エンジニアSQL棋譜並べ
♡ 3MySQL, SQLSQLパズルを学習する上で工夫したこと
♡ 2SQL, 学習, SQLパズル可視化 SQL | 中央値を求める
♡ 1SQL, 中央値, メジアン可視化 SQL | パズル#9 席あいてますか?その2
♡ 1SQL, パズル可視化SQL | LIFO と FIFO
♡ 1SQL, FIFO, パズル, LIFO可視化SQL | 期間を結合する(その3)
♡ 1SQL, 時間, join, 集合, HAVING可視化SQL | 期間を結合する(その2)
♡ 1SQL, case, 時間, 集合, HAVING
この本に興味がある方におすすめ
この本に関連
ジョー・セルコ の他の書籍
関連記事
子育てエンジニアが月 2 冊読むためのタイムハック
子どもが生まれて自由時間が激減したエンジニアへ。育児と両立しながら技術書を読み続けるための、現実的な時間の作り方と読書スタイルの工夫を紹介します。
「動くコード」と「良いコード」の間にある本
コードが動くようになった後、次に何を学べばよいのか。「動くコード」を「良いコード」に変えるために必要な知識と、それを効率的に学べる本の選び方を解説します。
技術書を読むベストな時間帯はいつか - 朝型・夜型エンジニアの読書事情
技術書を読むのに最適な時間帯を、認知科学の知見とエンジニアの実体験から探ります。朝の通勤中、昼休み、夜の自宅、それぞれの長所と短所を比較します。