SQLハンドブック
――機能引きガイド

[cover photo]
  • 2005年07月 発行
  • 192ページ
  • ISBN4-87311-236-2
  • 原書: SQL Pocket Guide
  • フォーマット

この商品は品切れ再入荷未定です

本書はSQLプログラマにとって最も使用頻度の高いデータ操作文とトランザクション制御文について簡潔にわかりやすくまとめた解説書です。データ変換などの一般的なSQL関数、また正規表現についても例を使い説明します。代表的なデータベースプラットフォームであるMySQL、Oracle、IBM DB2、Microsoft SQL Serverをカバーしています。必要な情報をコンパクトにまとめた本書は、複数のサーバを使い分ける技術者必携の1冊です。

はじめに

1章 CASE式
	1.1 単純CASE式
	1.2 検索CASE式

2章 NUL
	2.1 述部でNULLを扱う
	2.2 CASEでNULLを扱う
	2.3 関数でNULLを扱う(Oracle)
	2.4 関数でNULLを扱う(DB2)
	2.5 関数でNULLを扱う(SQL Server)
	2.6 関数でNULLを扱う(MySQL)

3章 階層(再帰)クエリ
	3.1 ANSI/ISOの再帰WITH(DB2)
	3.2 CONNECT BY構文(Oracle)
	3.2.1 CONNECT BYとSTART WITHとPRIOR(Oracle)
	3.2.2 WHERE句(Oracle)
	3.2.3 結合(Oracle)
	3.2.4 階層的ソート(Oracle)
	3.2.5 階層データのループ(Oracle)
	3.2.6 CONNECT BY関数とオペレータ(Oracle)

4章 関数
	4.1 日付関数
		4.1.1 現在の日時を取得
		4.1.2 四捨五入と切り捨て(Oracle)
		4.1.3 便利な日付関数(Oracle)
		4.1.4 便利な日付関数(SQL Server)
		4.1.5 便利な日付関数(MySQL)
	4.2 数値関数と数学関数
	4.3 三角関数
	4.4 文字列関数
		4.4.1 文字列を検索
		4.4.2 文字列内のテキストを置換
		4.4.3 部分文字列を取り出す
		4.4.4 文字列の長さを測定
		4.4.5 文字列を連結
		4.4.6 不要な文字を削除
		4.4.7 文字を変換
		4.4.8 文字列の大文字小文字を変換
	4.5 その他の関数(Oracle)

5章 グループ化と要約
	5.1 集計関数
	5.2 GROUP BY
	5.3 便利なGROUP BYのテクニック
		5.3.1 GROUP BYのリストを短縮
		5.3.2 結合前にグループ化
	5.4 HAVING
	5.5 GROUP BYの拡張機能(Oracle)
		5.5.1 ROLLUP(Oracle)
		5.5.2 CUBE(Oracle)
		5.5.3 GROUPING SETS(Oracle)
		5.5.4 関連の関数(Oracle)
	5.6 GROUP BYの拡張機能(SQL Server)
		5.6.1  ROLLUP(SQL Server)
		5.6.2 CUBE(SQL Server)
		5.6.3 GROUPING(SQL Server)

6章 サブクエリ
	6.1 WITH句
	6.2 相関のあるサブクエリとWITH

7章 述部
	7.1 グループ比較の述部
	7.2 左側に複数の値を指定(Oracle)
	7.3 EXISTSの述部
	7.4 INの述部
	7.5 BETWEENの述部
	7.6 LIKEの述部

8章 正規表現
	8.1 正規表現(Oracle)
	8.2 正規表現(SQL Server)
	8.3 正規表現(MySQL)

9章 データ型変換
	9.1 ANSI/ISOのCAST関数
	9.2 ANSI/ISOのEXTRACT関数
	9.3 日時変換(Oracle)
	9.4 数値変換(Oracle)
	9.5 さまざまな型変換(Oracle)
	9.6 日時変換(DB2)
	9.7 数値変換(DB2)
	9.8 さまざまな型変換(DB2)
	9.9 日時変換(SQL Server)
		9.9.1 CASTとSET DATEFORMAT(SQL Server)
		9.9.2 CONVERT(SQL Server)
		9.9.3 DATENAMEとDATEPART(SQL Server)
		9.9.4 DAYとMONTHとYEAR(SQL Server)
	9.10 数値変換(SQL Server)
	9.11 さまざまな型変換(SQL Server)
	9.12 日時変換(MySQL)
		9.12.1 日付と時間の要素を取り出す(MySQL)
		9.12.2 TO_DAYSとFROM_DAYS(MySQL)
		9.12.3 Unixタイムスタンプを利用(MySQL)
		9.12.4 当日の秒数を利用(MySQL)
		9.12.5 DATE_FORMATとTIME_FORMATを利用(MySQL)
	9.13 数値変換(MySQL)

10章 データ更新
	10.1 単純な更新
	10.2 サブクエリの結果で更新
	10.3 カーソルを使った更新
	10.4 ビューとサブクエリを更新
	10.5 パーティションを更新(Oracle)
	10.6 更新したデータを返す(Oracle)
	10.7 UPDATE FROM句(SQL Server)

11章 データ削除
	11.1 全行を削除
	11.2 ビューとサブクエリから削除
	11.3 パーティションから削除(Oracle)
	11.4 削除したデータを返す(Oracle)
	11.5 二重のFROM(SQL Server)

12章 データ選択
	12.1 SELECT句
		12.1.1 カラム名を指定
		12.1.2 アスタリスクで略記
		12.1.3 式を記述
		12.1.4 結果セットのカラム名を調節
		12.1.5 名前で大小文字と句読点を扱う
		12.1.6 SELECTのリストでサブクエリを使用
		12.1.7 カラム名を修飾
	12.2 ALLとDISTINCT
		12.2.1 すべての行を取得
		12.2.2 結果セットから重複した行を削除
	12.3 FROM句
		12.3.1 FROM句でテーブルエイリアスを指定
		12.3.2 FROM句でサブクエリを使用
		12.3.3 FROM句で集合を使用(Oracle)
		12.3.4 FROM句でパーティションとサブパーティションを使用(Oracle)
		12.3.5 フラッシュバッククエリ(Oracle)
	12.4 WHERE句
	12.5 GROUP BY句
	12.6 HAVING句
	12.7 ORDER BY句

13章 データ挿入
	13.1 1行を挿入
	13.2 挿入の対象
	13.3 サブクエリを挿入
	13.4 ダイレクトパスインサート(Oracle)
	13.5 挿入した値を返す(Oracle)
	13.6 複数のテーブルに挿入(Oracle)
		13.6.1 無条件で複数のテーブルに挿入(Oracle)
		13.6.2 条件つきで複数のテーブルに挿入(Oracle)
		13.6.3 ALL対FIRST(Oracle)

14章 データマージ

15章 テーブル結合
	15.1 結合の概念
	15.2 クロス結合
	15.3 内部結合
		15.3.1 SQL 1992の内部結合の構文
		15.3.2 結合の優先順位と括弧
		15.3.3 USING句
		15.3.4 自然結合
	15.4 非等価結合
	15.5 外部結合
		15.5.1 左外部結合
		15.5.2 外部結合でNULLを評価
		15.5.3 右外部結合
		15.5.4 完全外部結合
		15.5.5 ベンダ固有の外部結合の構文

16章 トランザクション管理
	16.1 自動コミットモード
	16.2 トランザクションを開始
		16.2.1 トランザクションを開始(Oracle)
		16.2.2 トランザクションを開始(SQL Server)
		16.2.3 トランザクションを開始(MySQL)
	16.3 トランザクションを終了
	16.4 トランザクションを中止
	16.5 トランザクションのセーブポイントまでロールバック

17章 フラッシュバッククエリ(Oracle)

18章 ユニオンクエリ
	18.1 UNIONとUNION ALL
		18.1.1 UNION
		18.1.2 UNION ALL
	18.2 評価の順序
	18.3 EXCEPT(またはMINUS)
		18.3.1 EXCEPT
		18.3.2 EXCEPT ALL(DB2)
	18.4 INTERSECT
		18.4.1 INTERSECT
		18.4.2 INTERSECT ALL

19章 リテラル
	19.1 テキストリテラル
	19.2 数値リテラル
	19.3 日時リテラル
	19.4 日時間隔リテラル

索引

Feedback

皆さんのご意見をお聞かせください。ご購入いただいた書籍やオライリー・ジャパンへのご感想やご意見、ご提案などをお聞かせください。より良い書籍づくりやサービス改良のための参考にさせていただきます。
[feedbackページへ]