初めてのSQL

[cover photo]
TOPICS
Programming , Database
発行年月日
PRINT LENGTH
320
ISBN
4-87311-281-8
原書
Learning SQL
FORMAT
PDF
Print
2,640円
この商品は品切れ再入荷未定です

本書『初めてのSQL』は、SQL言語に初めて触れるプログラマを対象に、SQL言語の基本を解説する書籍です。その特徴は、実践に必要なポイントを過不足なく、コンパクトにまとめたこと。「データベースの歴史」から始まり「データベースの作成と設定」「クエリ」「フィルタリング」「複数テーブルからのデータの取得」「集合」「データの作成、変換、操作」「グループ化と集約化」「サブクエリ」「結合」「条件ロジック」「トランザクション」「インデックスと制約」などについて、丁寧に解説を行います。本書のサンプルは、MySQLを使用していますが、Oracle、SQL Serverなどでも動作するように配慮されています。各章末には練習問題を掲載し、読者の理解を助けます。SQL言語の基本を確実に身に付けたい方におすすめです。

目次

はじめに

1章 背景情報
	1.1 データベースの概要
		1.1.1 非リレーショナルデータベースシステム
		1.1.2 リレーショナルモデル
		1.1.3 用語
	1.2 SQLとは何か
		1.2.1 SQL文の分類
		1.2.2 非手続き型言語
		1.2.3 SQLの例
	1.3 MySQLとは何か
	1.4 本書の内容

2章 データベースの作成と設定
	2.1 MySQLデータベースの作成
	2.2 mysqlコマンドラインユーティリティの使用
	2.3 MySQLのデータ型
		2.3.1 文字データ
		2.3.2 数値データ
		2.3.3 時間データ
	2.4 テーブルの作成
		2.4.1 ステップ1:設計
		2.4.2 ステップ2:改良
		2.4.3 ステップ3:SQLスキーマ文の作成
	2.5 テーブルへのデータの挿入と変更
		2.5.1 データの挿入
		2.5.2 データの更新
		2.5.3 データの削除
	2.6 文も使い方次第
		2.6.1 一意でない主キー
		2.6.2 存在しない外部キー
		2.6.3 列値の違反
		2.6.4 無効な日付の変換
	2.7 bankスキーマ

3章 クエリ入門
	3.1 クエリの仕組み
	3.2 クエリの節
	3.3 select節
		3.3.1 列エイリアス
		3.3.2 重複の削除
	3.4 from節
		3.4.1 テーブル
		3.4.2 テーブルリンク
		3.4.3 テーブルエイリアスの定義
	3.5 where節
	3.6 group by節とhaving節
	3.7 order by節
		3.7.1 昇順と降順
		3.7.2 式による並べ替え
		3.7.3 数値のプレースホルダによる並べ替え
	3.8 練習問題

4章 フィルタリング
	4.1 条件の評価
		4.1.1 かっこの使用
		4.1.2 not演算子の使用
	4.2 条件の構築
	4.3 条件の種類
		4.3.1 等価条件
		4.3.2 範囲条件
		4.3.3 メンバーシップ条件
		4.3.4 一致条件
	4.4 null
	4.5 練習問題

5章 複数テーブルからのデータの取得
	5.1 結合とは何か
		5.1.1 デカルト積
		5.1.2 内部結合
		5.1.3 ANSIの結合構文
	5.2 3つ以上のテーブルの結合
		5.2.1 テーブルとしてのサブクエリの使用
		5.2.2 同じテーブルの複数使用
	5.3 自己結合
	5.4 等結合と非等結合
	5.5 結合条件とフィルタ条件
	5.6 練習問題

6章 集合
	6.1 集合理論:入門
	6.2 集合理論:実践
	6.3 集合演算子
		6.3.1 union演算子
		6.3.2 intersect演算子
		6.3.3 except演算子
	6.4 集合演算のルール
		6.4.1 複合クエリの結果の並べ替え
		6.4.2 集合演算子の優先順位
	6.5 練習問題

7章 データの生成、変換、操作
	7.1 文字列データの操作
		7.1.1 文字列の生成
		7.1.2 文字列の操作
	7.2 数値データの操作
		7.2.1 算術関数の実行
		7.2.2 数値の精度の制御
		7.2.3 符号付きデータの処理
	7.3 時間データの操作
		7.3.1 タイムゾーンへの対処
		7.3.2 時間データの生成
		7.3.3 時間データの操作
	7.4 変換関数
	7.5 練習問題

8章 グループ化と集約化
	8.1 グループ化
	8.2 集約関数
		8.2.1 明示的なグループと暗黙的なグループ
		8.2.2 別個の値のカウント
		8.2.3 式の使用
		8.2.4 nullを処理する方法
	8.3 グループの生成
		8.3.1 単一列でのグループ化
		8.3.2 複数列でのグループ化
		8.3.3 式によるグループ化
		8.3.4 小計値の生成
	8.4 グループのフィルタ条件
	8.5 練習問題

9章 サブクエリ
	9.1 サブクエリとは何か
	9.2 サブクエリの種類
	9.3 非相関サブクエリ
		9.3.1 複数行/単一列のサブクエリ
		9.3.2 複数列のサブクエリ
	9.4 相関サブクエリ
		9.4.1 exists演算子
		9.4.2 相関サブクエリによるデータ操作
	9.5 サブクエリを使用する状況
		9.5.1 データソースとしてのサブクエリ
		9.5.2 フィルタ条件のサブクエリ
		9.5.3 式ジェネレータとしてのサブクエリ
	9.6 サブクエリのまとめ
	9.7 練習問題

10章 結合
	10.1 外部結合
		10.1.1 左外部結合と右外部結合
		10.1.2 3段の外部結合
		10.1.3 自己外部結合
	10.2 直積
	10.3 自然結合
	10.4 練習問題

11章 条件ロジック
	11.1 条件ロジックとは何か
	11.2 case式
		11.2.1 検索case式
		11.2.2 単純case式
	11.3 case式の例
		11.3.1 結果セットの変換
		11.3.2 選択に基づく集約
		11.3.3 存在の確認
		11.3.4 0による除算エラー
		11.3.5 条件に基づく更新
		11.3.6 null値の処理
	11.4 練習問題

12章 トランザクション
	12.1 マルチユーザーデータベース
	12.2 トランザクションとは何か
		12.2.1 トランザクションの開始
		12.2.2 トランザクションの終了
		12.2.3 トランザクションのセーブポイント

13章 インデックスと制約
	13.1 インデックス
		13.1.1 インデックスの作成
		13.1.2 インデックスの種類
		13.1.3 インデックスはどのように使用されるか
		13.1.4 インデックスの欠点
	13.2 制約
		13.2.1 制約の作成
		13.2.2 制約とインデックス
		13.2.3 制約の連鎖

付録A サンプルデータベースのER図

付録B MySQLによるSQL言語の拡張
	B.1 select文の拡張機能
		B.1.1 limit節
		B.1.2 into outfile節
	B.2 insert文とupdate文の組み合わせ
	B.3 順序付けされたupdate文とdelete文
	B.4 複数テーブルのupdate文とdelete文

付録C 練習問題の解答

付録D 参考文献
	D.1 高度なSQL
	D.2 データベースプログラミング
	D.3 データベースの設計
	D.4 データベースのチューニング
	D.5 データベースの管理
	D.6 レポートの生成

索引