書籍概要

WEB+DB PRESS plus

改訂第4版 すらすらと手が動くようになる SQL書き方ドリル

著者
発売日
更新日

概要

SQLがドリル形式で自然に習得できる「SQL書き方ドリル」の改訂第4版です。第3版までCD-ROM提供していた学習ソフトSQUATなどの付録コンテンツはWebダウンロード形式になります。SQLはPostgreSQL,MySQL,Oracle,SQL Serverと,AWS,Azure,Google Cloud版の各RDBMSに対応します。

本書は「SQLを習得するためには,何よりもSQLを実際に書くことが重要」という変わらぬコンセプトのもと,「本に直接書き込む」+「付録学習ソフトSQUATで直接打ち込む」の2つの学習形態でSQLがドリル学習できる書籍です。本書独自のノウハウである「SQLの書き順」と「RDBMSの内部動作」について,解説を読んで理解し,ドリルで反復学習することで,SQLが,自由自在に使いこなすことができる確固たる武器になります。

こんな方におすすめ

  • これからSQLを学習したい方
  • 思いどおりのSQLが書けないという方
  • SQLのパフォーマンスに自信がないという方

目次

準備編

第1章 すらすらと手が動くようになるための学習の進め方

  • この本は何なのか?
  • どんなふうに活用すればいいの?
  • しっかり習得してもらうために
  • もろもろの補足など
  • 本書付属コンテンツとソフトウェア
  • さあ,はじめよう!

練習編

第2章 ひとつのテーブルを扱う

  • その1 ● データを取り出す 顧客一覧を出してくれ
  • その2 ● 複数の列を指定する 商品ごとの単価を出してくれ
  • その3 ● 列に別名をつける 項目の名前がわからない
  • その4 ● 列の値に対して演算を行う 税込価格で一覧を出してくれ
  • その5 ● 列同士で演算を行う 社員の健康状態を一覧で出してくれ
  • その6 ● 文字列の連結を行う 名札を作ってくれ
  • その7 ● 集合関数を使う 平均を教えてくれ
  • その8 ● ある条件でレコードを絞り込む(1) 身長が大きな人を教えてくれ
  • その9 ● ある条件でレコードを絞り込む(2) 「~子」という名前の人の人数を教えてくれ
  • コラム ●「*」って何?
  • その10 ● 列の値に条件を設定する 単価別にランク付けしてみてくれ
  • その11 ● グループ単位で集計する 都道府県別の顧客数を教えてくれ
  • その12 ● グループ単位で集計した結果を絞り込む(1) 顧客数が3人以上の都道府県を教えてくれ
  • その13 ● グループ単位で集計した結果を絞り込む(2) 法人客の数が2人以上の都道府県を教えてくれ
  • その14 ● クロス集計を行う 社員の血液型別の人数ってどうなってるんだろう
  • その15 ● 並び替えを行う 単価の安い順に商品名を出してくれ
  • その16 ● 重複を排除する 住所一覧を出してくれ

第3章 複数のテーブルを扱う

  • 特別講義(1)● 結合とは  ここから先に進む前に!
  • その1 ● 副問い合わせを使う 販売数量がゼロの商品を教えてくれ
  • 特別講義(2)● テーブルに別名をつける ここから先に進む前に!
  • その2 ● 複数テーブルの結合を行う(1) 再び都道府県別の顧客数を教えてくれ
  • その3 ● 複数テーブルの結合を行う(2) 部門別の平均給与額を教えてくれ
  • コラム ●名前付きSELECT文としてのビュー
  • その4 ● 外部結合を使う 全部の商品の平均販売単価を教えてくれ
  • その5 ● 自己結合を使う セット商品の候補を考えてくれ
  • その6 ● 相関副問い合わせを使う 商品別の平均販売数量よりも多く売れている日を教えてくれ
  • 特別講義(3)● 集合演算とは ここから先に進む前に!
  • その7 ● UNION ALLを使う 顧客と社員の名前一覧を出してくれ
  • その8 ● UNIONを使う 重複のない顧客・社員の名前一覧にしてくれ
  • その9 ● INTERSECTを使う 給料日に販売をした社員の一覧を出してくれ
  • その10 ● EXCEPTを使う 販売をしたことがない社員の一覧を出してくれ

第4章 追加・更新・削除

  • その1 ● レコードを1件追加する 新商品を追加しておいてくれ
  • その2 ● 副問い合わせを使って追加する 今までの売上を元に特別ボーナスを出そう
  • コラム ● NULLのお話
  • その3 ● レコードを更新する 商品価格を変更しておいてくれ
  • その4 ● 特定のレコードを更新する 顧客の住所を変更しておいてくれ
  • その5 ● 更新条件に副問い合わせを使う 販売個数の多いものの単価を少しアップしよう
  • その6 ● 他のテーブルの値を使って更新する 特別ボーナスにさらに勤続年数の分だけ上乗せしよう
  • その7 ● レコードを削除する 給与データを消去しておいてくれ
  • その8 ● 特定のレコードを削除する 退職した人のデータを削除しておいてくれ
  • その9 ● 削除条件に副問い合わせを使う 販売数量がゼロの商品を削除してくれ

実践編

第5章 応用問題

  • その1 ● SQLをSELECT文で作成する
  • その2 ● 月別販売額一覧の作成
  • その3 ● 社員別・月別販売額一覧の作成
  • その4 ● 商品別・月別販売額一覧の作成
  • その5 ● 顧客別・商品別販売額一覧の作成
  • その6 ● 都道府県別・商品別販売額一覧の作成
  • その7 ● 部門別・月別平均給与一覧の作成
  • その8 ● 月別・カテゴリ別販売額一覧の作成
  • その9 ● 商品別3ヶ月販売推移表の作成
  • その10 ● 顧客コードの再編

オンライン付属コンテンツとソフトウェア

付属PDF コンテンツ

ガイド編 学習用データベースの構成とSQUATの導入方法・使い方
  • 学習用データベースについて
  • 付属オンラインコンテンツについて
  • 素振りソフトウェアSQUAT活用ガイド
解答編 第2章~第4章「練習問題」,第5章「応用問題」の解答

ソフトウェア

  • 反復学習用ソフトウェアSQUAT

HTML

  • SQL書き方ドリルリファレンス

SQLスクリプト

  • サンプルテーブル作成用SQLスクリプト
  • 解答SQLスクリプト

サポート

ダウンロード

オンライン付属コンテンツには下記を収録しています。本書記載のパスワードを入力してダウンロードしてご使用ください。

(2025年1月15日更新)

ソフトウェア
反復学習用ソフトウェアSQUAT
HTML
SQL 書き方ドリルリファレンス
SQL スクリプト
サンプルテーブル作成用SQL スクリプト
解答SQL スクリプト
ドキュメントPDF
ガイド編「学習用データベースの構成とSQUAT の導入方
解答編「第2章~第4章「練習問題」,第5章「応用問題」の解答」

SQL_DRILL.zip(11MB)

商品一覧