レバテックフリーランスのサイトに当サイトが紹介されました!

【2023年】DB/SQL本「人気BEST30 / おすすめ参考書20選」【データベースをマスター】

SQLはデータベース操作用のプログラミング言語。MySQL、PostgreSQLなどのデータベース(RDB)が操作可能です。

世の多くのIT系のサービス/アプリは、様々なデータをDataBaseとやり取りすること成り立っており、IT/Webサービス作りにDB操作の知識は欠かせません

また、現在はビッグデータ分析等のデータ解析需要も高く、データベースを自在に高速に扱う技術は益々必要とされています。

そんなぜひとも身につけたいデータベース言語「SQL」を、人気や実用方法別のおすすめ書籍等とともに見ていきまっす。


 

 

  1. DB/SQLの本「人気ランキング」
  2. SQL入門におすすめの参考書
    1. スッキリわかるSQL入門 第2版 ドリル222問付き! (スッキリシリーズ)
    2. SQL 第2版 ゼロからはじめるデータベース操作
    3. SQLの絵本 第2版 データベースが好きになる新しい9つの扉
  3. SQLを使いこなす中級者向け実用書籍
    1. できるPRO MySQL できるPROシリーズ
    2. SQL実践入門 ──高速でわかりやすいクエリの書き方 WEB+DB PRESS plus
    3. SQLパズル 第2版~プログラミングが変わる書き方/考え方
    4. プログラマのためのSQL 第4版
  4. MySQL実用向けの参考書
    1. やさしく学べるMySQL運用・管理入門【5.7対応】
    2. 基礎からのMySQL 第3版
    3. 15時間でわかるMySQL集中講座
    4. 3ステップでしっかり学ぶ MySQL入門 [改訂2版]
  5. PostgreSQL本
    1. [改訂新版]内部構造から学ぶPostgreSQL 設計・運用計画の鉄則 (Software Design plus)
    2. PostgreSQL徹底入門 第4版 インストールから機能・仕組み、アプリ作り、管理・運用まで
  6. SQLリファレンス本
    1. SQLアンチパターン
    2. [改訂第4版]SQLポケットリファレンス
  7. SQLServer本
    1. SQL Server 2016の教科書 開発編
    2. SQL Server Transact-SQLプログラミング 実践開発ガイド
  8. データ分析応用
    1. 前処理大全[データ分析のためのSQL/R/Python実践テクニック]
    2. ビッグデータ分析・活用のためのSQLレシピ
  9. SQL学習書「Kindle Unlmited 読み放題 人気ランキング」
  10. 関連:PHP、RubyなどでWebサービスとして実用しよう
 

Kindle Unlimited 1ヶ月無料

kindle_unlimited_sale
 
  • 1ヶ月無料で読み放題
  • 1ヶ月以内でも解約可能
  • 解約後も1ヶ月まで利用可


 

DB/SQLの本「人気ランキング」

SQLのプログラミング本を、今売れ筋の人気ランキングで一覧したのが以下。

ランキングは日々更新されていますので、最新の人気が反映されています。

 

(2024/09/08 12:15 更新)
Rank製品価格
1
2,728円
2,455円
2,728円
2,728円
2
3,080円
3,080円
3
SQL 第2版 ゼロからはじめるデータベース操作
発売日 2016/06/01
ミック (翔泳社)
総合評価
(4.3)
2,068円
売り切れ
2,068円
2,068円
4
1週間でMySQLの基礎が学べる本
発売日 2021/09/14
亀田 健司 (インプレス)
総合評価
(4.2)
2,860円
2,574円
2,860円
2,860円
5
2,420円
1,089円
2,178円
6
データベース4800 完成英単語・熟語
発売日 2023/10/16
(桐原書店)
1,265円
1,265円
7
SQLアンチパターン
発売日 2013/01/26
Bill Karwin (オライリージャパン)
総合評価
(4.2)
3,520円
(+106pt)
3,520円
3,520円
8
SQL実践入門 ──高速でわかりやすいクエリの書き方 WEB+DB PRESS plus...
発売日 2018/11/14
ミック (技術評論社)
総合評価
(3.8)
2,838円
2,781円
2,838円
2,838円
9
Webアプリケーションアクセシビリティ──今日から始める現場からの改善 (WEB+DB PRESS plus)...
発売日 2023/02/27
伊原 力也, 小林 大輔, 桝田 草一, 山本 伶 (技術評論社)
総合評価
(4.7)
3,960円
(+119pt)
3,881円
(+117pt)
3,960円
10
[改訂第4版]SQLポケットリファレンス
発売日 2017/02/18
朝井 淳 (技術評論社)
総合評価
(4.1)
2,178円
2,134円
2,178円
2,178円
11
できるExcelデータベース 入力・整形・分析の効率アップに役立つ本 2019/2016/2013 & Microsoft 365対応 でき...
発売日 2020/11/06
早坂清志, できるシリーズ編集部 (インプレス)
総合評価
(4.4)
2,288円
2,059円
2,288円
2,288円
12
3,520円
3,520円
3,520円
13
絵で見てわかるSQL Serverの仕組み
発売日 2020/09/14
平山 理 (翔泳社)
総合評価
(4.1)
2,860円
2,574円
2,860円
2,860円
14
データベース3300 基本英単語・熟語
発売日 2022/10/14
(桐原書店)
1,395円
1,100円
15
SQL Server Transact-SQLプログラミング 実践開発ガイド
発売日 2019/10/09
五十嵐 貴之 (技術評論社)
総合評価
(4.1)
3,938円
(+119pt)
3,859円
(+116pt)
3,938円
3,938円
16
プロとしてのOracle PL/SQL入門 【第3版】(Oracle 12c、11g、10g対応)...
発売日 2014/12/04
アシスト教育部 (SBクリエイティブ)
総合評価
(4.3)
売り切れ
2,640円
(+792pt)
2,640円
2,288円
17
スッキリわかるSQL入門 第3版 ドリル256問付き! (スッキリわかる入門シリーズ)...
発売日 2022/03/29
中山 清喬, 飯田 理恵子 (インプレス)
総合評価
(4.3)
3,080円
売り切れ
3,080円
3,080円
18
図解まるわかり データベースのしくみ
発売日 2021/01/27
坂上 幸大 (翔泳社)
総合評価
(4.1)
1,848円
1,811円
(+719pt)
1,848円
1,848円
19
SQLパズル 第2版~プログラミングが変わる書き方/考え方
発売日 2007/11/01
ジョー セルコ (翔泳社)
総合評価
(3.2)
3,080円
3,080円
3,080円
20
SQLの苦手を克服する本 データの操作がイメージできれば誰でもできる Software Design plus...
発売日 2019/08/26
生島 勘富, 開米 瑞浩 (技術評論社)
総合評価
(4.1)
2,728円
2,673円
2,728円
2,728円
21
要点整理から攻略する『AWS認定 データベース-専門知識』 (Compass Booksシリーズ)...
発売日 2021/06/17
NRIネットコム株式会社, 佐々木 拓郎, 上野 史瑛, 小西 秀和 (マイナビ出版)
総合評価
(4.5)
3,828円
(+115pt)
売り切れ
3,828円
3,828円
22
プログラマのためのSQL 第4版 すべてを知り尽くしたいあなたに...
発売日 2015/01/19
Joe Celko (翔泳社)
総合評価
(4.4)
5,060円
(+152pt)
4,554円
5,060円
5,060円
23
SQL1年生 データベースのしくみ SQLiteで体験してわかる!会話でまなべる!...
発売日 2023/10/16
リブロワークス (翔泳社)
総合評価
(4)
2,178円
1,960円
2,178円
24
マンガでわかるデータベース
発売日 2005/12/01
高橋 麻奈 (オーム社)
総合評価
(4.2)
2,090円
2,090円
2,090円
25
RDB技術者のためのNoSQLガイド
発売日 2017/05/09
河村康爾, 北沢匠, 佐伯嘉康, 佐藤直生 (秀和システム)
総合評価
(4.3)
3,614円
3,366円
3,366円
3,088円
26
10年戦えるデータ分析入門 SQLを武器にデータ活用時代を生き抜く (Informatics &IDEA)...
発売日 2015/06/30
青木 峰郎 (SBクリエイティブ)
総合評価
(3.8)
3,023円
2,838円
(+851pt)
2,640円
3,945円
27
Accessデータベース 本格作成入門 〜仕事の現場で即使える
発売日 2017/04/20
今村ゆうこ (技術評論社)
総合評価
(3.6)
2,580円
2,728円
2,728円
2,728円
28
おうちで学べるデータベースのきほん
発売日 2015/02/20
ミック, 木村 明治 (翔泳社)
総合評価
(4.2)
2,420円
(+110pt)
2,178円
2,420円
2,420円
29
1,815円
1,815円
30
WEB+DB PRESS Vol.130
発売日 2022/08/24
(技術評論社)
総合評価
(3.9)
1,628円
1,595円
1,305円

 

以降でおすすめ・注目の本をピックアップしていきまっす。

ちなみに、Kindle版のある本ならサンプル送信で試し読み可能。大概目次まで見れるので、内容の概要もつかめるので、サンプル試読おすすめです。

 

SQL入門におすすめの参考書

DataBaseはなんとなく知っているけど、改めてSQLでしっかり操作するのはこれから。

なんてSQLの入門者は、丁寧でとっつきやすい以下のような書籍から学んでみるのがおすすめです。

まずは、SQLを使って意図した通りのデータを引き出す、保存できるということを実現して、DBを扱えるという自信をつけましょう。

ちなみに、MySQL、PostgreSQLといったデータベースの構築といったところが不安なら後述のDBに合わせた書籍も併用すると良いです。

スッキリわかるSQL入門 第2版 ドリル222問付き! (スッキリシリーズ)

SQLの基礎をこの1冊でマスターしよう!
SQLの学習で必ずぶつかる「なぜ?」「どうしてこうなる?」も、
楽しく・深く・効率よく、必ず理解できるSQL入門の決定版!

SQLの入門書において、発売から数年で不動の定番テキストとなった大人気SQL入門書に、最新のDBに対応した改訂版が登場!

本書は豊富な図解とていねいな解説により、やさしく・楽しくデータベースとSQLを学習できる入門書です。

姉妹書の『Java入門』と同じく、新人エンジニアたちの成長を傍らに、開発中に発生するSQLの「なぜ?」にしっかりと答えながら解説が進んでいきますので、データベースを仕事で使いこなすためのスキルが、スッキリ、楽しく、グングン身に付きます

本書では、初学者が学習環境の構築でつまづかないように、Webブラウザ上でSQLの作成と実行ができる、クラウドデータベース実行環境「dokoQL」(どこきゅーえる)を用意しています。
PCはもちろんスマートフォンからも利用できるdokoQLは、自宅だけでなく通勤・通学中の「すきま時間」にも効率的にSQLとデータベースを学ぶことができるます。

巻末には、アウトプット学習用に、基礎問題、発展問題、あわせて222問のドリルを掲載。
ドリル問題を繰り返し解くことで現場で使えるSQLが着実に身に付きます。
ドリルの解答PDFは購入者限定特典としてダウンロード提供中です。
(特典の利用には、インプレスの無料読者会員システムへの登録が必要になります。提供予定期間は、発売から6年間となっています)

さらに、巻末にはスッキリシリーズおなじみの、よく陥りがちなエラーや落とし穴の対策をまとめた「エラー解決 虎の巻」を収録。

スッキリシリーズは新人エンジニアをさまざまな角度から徹底的に応援しています!

↓全て表示↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
目次
データベースを学ぶにあたって
第1部 SQLを始めよう(はじめてのSQL
基本文法と4大命令
操作する行の絞り込み
検索結果の加工)
第2部 SQLを使いこなそう(式と関数
集計とグループ化
副問い合わせ
複数テーブルの結合)
第3部 データベースの知識を深めよう(トランザクション
テーブルの作成
さまざまな支援機能)
第4部 データベースで実現しよう(テーブルの設計)

↓全て表示↑少なく表示
Users Voice
大学の授業でつかうテキストを購入。 綺麗に使われていて、支障なく使えました。 いい買い物をしたと思います。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
すぐ届きましたので助かりました、ありがとうございます。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
配送がとても速くて大変満足しております。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
著者略歴
中山清喬(ナカヤマキヨタカ)
株式会社フレアリンク代表取締役。IBM内の先進技術部隊にてシステム構築現場を数多く支援。退職後も、研究開発、技術適用支援、教育研修、講演、執筆などを通じ、「技術を味方につける経営」を支援している

飯田理恵子(イイダリエコ)
経営学部情報管理学科卒。長年、大手金融グループの基幹系システムの開発と保守にSEとして携わる。現在は株式会社フレアリンクにて、ソフトウェア開発、コンテンツ制作、経営企画などを通して技術の伝達を支援中(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示

  

SQL 第2版 ゼロからはじめるデータベース操作

大好評のSQL定番入門書が改訂! SQLの書き方からアプリでの利用までしっかり学ぼう!

プログラミング学習シリーズ『SQL ゼロからはじめるデータベース操作』は、「データベースやSQLがはじめて」という初心者を対象に、プロのデータベース(DB)エンジニアである著者がSQLの基礎とコツをやさしく丁寧に教える入門書です。
DB/テーブルの構造から、データを検索したり更新したりする構文、よく使う関数、テーブルの結合など、SQLによるデータベース操作の基本を学習していきます。WHERE句、GROUP BY句、HAVING句やサブクエリなど、SQLを使いこなすためのポイントとなる機能や、初心者にとって理解が難しい部分は、豊富な図とサンプルプログラムでかみくだいて解説しています。
また、標準SQLをベースに、各種DB(Oracle、SQL Server、DB2、PostgreSQL、MySQL)での違いや、初心者がハマりやすいポイント、基礎ノウハウについてもしっかり解説。
第2版では、解説・サンプルコードを最新DBのSQLに対応したほか、(PostgreSQLを例に)アプリケーションプログラムからSQLを実行する方法の解説章を新設。SQLの書き方だけはなく、アプリケーションでの利用方法までフォローします。
データベースを扱うアプリを作りたいが何から学習すれば良いかわからない、きちんとSQLを書けるようになりたい、現場で通用する基礎を身につけたい、という方におすすめの1冊です。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
目次
第0章 イントロダクション――SQL学習環境を作ろう
第1章 データベースとSQL
第2章 検索の基本
第3章 集約と並べ替え
第4章 データの更新
第5章 複雑な問い合わせ
第6章 関数、述語、CASE式
第7章 集合演算
第8章 SQLによる高度な処理
第9章 アプリケーションからデータベースへ接続する
付録 練習問題の解答

↓全て表示↑少なく表示
Users Voice
勉強しなくてはいけなくて、いろいろ探して口コミで決めました。 分かりやすいと思います。 仕事の合間に勉強します。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
プログラミングを勉強中のこどもの為に購入しました。 分かりやすいと言っていました。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
説明がわかりやすく、また図解も多いため理解がしやすいです。
主要なDBMSについても違いが細かく書かれており、初学者が読むのに最適だと思います。 (参考:honto)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
著者略歴
ミック
SI企業に勤務するDBエンジニア。主にDWH/BI業務に従事している。自身のサイト「リレーショナル・データベースの世界」でデータベースとSQLについての技術情報を公開している(本データはこの書籍が刊行された当時に掲載されていたものです)

  

SQLの絵本 第2版 データベースが好きになる新しい9つの扉

SQLの絵本 第2版 データベースが好きになる新しい9つの扉
(著)株式会社アンク
発売日 2018/08/24
総合評価
(4)
(2024/09/08 12:15時点)
【本電子書籍は固定レイアウトのため7インチ以上の端末での利用を推奨しております。文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。ご購入前に、無料サンプルにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください】

一番やさしいデータベースとSQLの入門書がリニューアル

データベースは沢山のデータを管理するためのソフトですが、データの登録/変更/削除を確実にし、多数のユーザーからの操作を受け付ける仕組みが備わっています。このデータベースを操作するための言語がSQLです。しかし、本書は「そもそもデータベース(リレーショナルデータベース)とはどういうものであるか」から解説を始めます。データベースの基礎知識を解説し、データの操作を実際に試して学ぶことができる一冊です。

・絵を多用し、短い解説で絵本のようにビジュアルに理解することができます。
・2ページを単位とした説明、基礎に絞り込んだ内容でスピーディに習得。
・予備知識は不要。「データベースの基本概念」から学べます。
・改訂版では、内容を最新にアップデートし、操作を中心に学べるように改訂しました。
・無料で試せる、最新のデータベースのインストール方法も紹介。

【「絵本」シリーズは、ラインナップをリニューアル!】
翔泳社の「絵本シリーズ」は、豊富なイラストと簡潔な解説で
コンピュータ技術に入門できる初心者向けのシリーズです。
言語/技術の超初心者や手軽に習得したい方に最適な入門書です。

新しい「絵本シリーズ」では、旧来の分かりやすさ、親しみやすさ、
基礎に徹した内容というコンセプトはそのままに、Web/ネットが全盛となった
現在のコンピュータ技術の潮流に合わせた解説を心掛けます。

『Cの絵本』『Javaの絵本』『Pythonの絵本』などを皮切りにラインナップを順次刷新、
さらに新しい仲間を増やしてラインナップを充実していきます。

※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。
※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。
※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。
※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
DBを初めてやってみようと思いこの本を選びました。イラストもあり、わたしにはとても入りやすかったです。また、わかりやすいと思います。お勧めできる本ですね。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
新卒トレーニングに使用しています。
Microsoft SQL Server のT-SQLに準拠したSQL文で入門書に該当する唯一のテキストです。
解説、演習、結果
という流れで説明があるので、オンラインでの講義でも講師側の立場として教えやすいです。(★★★★★)
欲を言えば章末に演習問題が欲しいですね。SELECT句のCASE文の解説が無いのはもったいないです。
入門書でフォントの l(小文字のエル) と 1(数字のいち) の違いが不明瞭なのは致命的で、
タイプミスする人が続出しています。(★-2) (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
  

SQLを使いこなす中級者向け実用書籍

ある程度SQLを使い基本的な操作ができたら、複雑なデータ操作をどう簡潔に行うか、どうやれば高速に処理できるか、といったことを考慮した高レベルなDB操作を身につけていきましょう。

以下がDB操作中級者へなるために必要な良書たちです。

できるPRO MySQL できるPROシリーズ

できるPRO MySQL できるPROシリーズ
(著)赤井 誠, できるシリーズ編集部
発売日 2015/01/30
総合評価
(3)
(2024/09/08 12:15時点)
※この商品は固定レイアウトで作成されており、タブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。
 購入前にお使いの端末で無料サンプルをお試しください。

 MySQLといえば、世界でもっとも使われているオープンソースデータベースです。今や、ウェブサイトでもっとも活用されているデータベースであると言ってもいいでしょう。例えば、みなさんが普段から使われることの多い、Facebook、YouTube、Wikipedia、ニコニコ動画などのウェブサイトでもMySQLは利用されています。すでにMySQLなしでは、わたしたちの普段の生活も困難になってきているとさえいえる状況です。
 MySQLの特長は、高いパフォーマンス、数メガバイト単位からテラバイト単位まで対応する拡張性、Linux、Windows、MacOSなどの複数のプラットフォームに対応し、PHP、Ruby、Python、Perl、Java、Cといったさまざまなコンピューター言語からの接続性、高い堅牢性、信頼性、安全性、そして、簡単に無償で入手できることです。
 このため、MySQLは、データベースを学ぶ人にとって、もっとも役に立つソフトウェアの1つとなっています。
 今回、個人で学びやすくできるように、急速に情報や環境が充実したWindows上でのMySQLをベースにして、データベース、Webアプリケーションについて、学ぶきっかけとなるように構成しました。
 特に、データベースを学びたい、あるいは、ウェブサイト構築をしたいという初心者のみなさんに、インストール方法から、データベースの利用方法、Webアプリケーションの構築まで、わかりやすく紹介した書籍となっています。そして、さらに深く学びたい方には、ステップアップに役立つ情報を提供しています。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
この手の書籍は中古品故の傷みが気になるところですが、お値段相応の状態でした。
満足しております。 (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
  

SQL実践入門 ──高速でわかりやすいクエリの書き方 WEB+DB PRESS plus

本電子書籍は2015年4月11日初版発行のものを、後日電子化し、発売したものです。
(概要)
SQLはデータベース操作に特化した言語で,柔軟にデータを操作できます。ただし,独自のロジックに基づいているため,それを正しく理解しなければ,読みづらくパフォーマンスの出ないSQLになってしまいます。本書では,「条件分岐」「集約」「ループ」「結合」「更新」など日常的に実行する処理の良い書き方・悪い書き方を解説します。その際,データベース内部でどう処理が実行されているかを示す実行計画を読み解くことで,「なぜそう書くと効率が良いのか」「可読性や保守性が向上するのか」を実感を持って理解することを目指します。

(こんな方にオススメ)
・データベースに触れる機会の多いWebアプリケーションエンジニア
・データベースエンジニア

(目次)
第1章 DBMSのアーキテクチャ──この世にただ飯はあるか

第2章 SQLの基礎──母国語を話すがごとく

第3章 SQLにおける条件分岐──文から式へ

第4章 集約とカット──集合の世界

第5章 ループ──手続き型の呪縛

第6章 結合──結合を制する者はSQLを制す

第7章 サブクエリ──困難は分割するべきか

第8章 SQLにおける順序──甦る手続き型

第9章 更新とデータモデル──盲目のスーパーソルジャー

第10章 インデックスを使いこなす──秀才の弱点

Appendix A:PostgreSQLのインストールと起動

Appendix B:演習問題の解答

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
分かりやすく解説いただいているので理解がしやすかったです。手元に置いておいて何度もよみかえししようと思います。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
綺麗な状態でした。 ありがとうございました! (参考:YahooShopping)

↓全て表示 ↑少なく表示
これで入門書と言われると、道は険しく果てしない感じがしてしまう。
ド級の初心者がこれで入門しようとしたら、
折れない気持ちを支える技術が身につくことは間違いない。
もちろんあわせてSQLの正しい技術も身につくのでお得ではある。
(以下抜粋。○:完全抜粋、●:簡略抜粋)
○SQLの世界のスキームは宣言型です。この世界では、主役は「文」ではなく「式」です。(P.98)
○RDBを考案したCoddは次のように言っています。
 関係操作では、関係全体をまとめて操作の対象とする。
 目的は繰り返し(ループ)をなくすることである。(P.125)
○SQLは、本省の最初で紹介したCoddの言葉からもわかるように
 「脱・手続き型」を目指した言語です。
 DBMSも内部的には手続き型言語で作られており、
 実際の物理データへのアクセスは手続き的に行っているのですが、
 その手続きレイヤを隠蔽することがSQLの理念でした。(P.159)
○「内部」が「直積の部分集合」という含意を持っていたことから類推できるとおり、
 「外部」とは「直積の部分集合にならない」という意味です。(P.172)
○B-treeは、検索のアルゴリズムとしては飛び抜けて性能が良いわけではありません。
 考案者の一人であるR.Bayerも、
 「もし世界が完全に静的でデータが変化しないなら、
 ほかのインデックス技術でも同程度のパフォーマンスは達成できるだろう」と言っています。(P.299) (参考:honto)

↓全て表示 ↑少なく表示
 
  

SQLパズル 第2版~プログラミングが変わる書き方/考え方

SQLパズル 第2版~プログラミングが変わる書き方/考え方
(著)ジョー セルコ
発売日 2007/11/01
総合評価
(3.2)
(2024/09/08 12:15時点)
次々に繰り出される超絶技巧の数々!
真のSQLプログラミングがここにある!

9年ぶりに改訂された名著『Joe Celko's SQL Puzzles and Answers』の
第2版を、開発者向けWebサイト「CodeZine」で精緻なSQL解説を
展開するミック氏が翻訳。他に類を見ない高度なSQLプログラミングテクニックを、
75問の楽しいパズルで身に付けられます。

パズルは勤怠管理や売上ランキングといった日常業務に近いものから、
数独パズルの解析までバラエティ豊富。また、紹介されるテクニックも
RDBの本質である集合論の考え方を踏まえ、広く応用が効きます。
DBエンジニア/開発者必携の1冊です。
 
内容サンプル

(引用元Amazon)

 
目次
パズル1 会計年度テーブル―範囲外の日付を入力しないための制約
パズル2 欠勤―条件付きのUPDATE/DELETE
パズル3 忙しい麻酔医―重複する期間の抽出(その1)
パズル4 入館証―UPDATEで相関サブクエリを使用する
パズル5 アルファベット―あいまい検索と正規表現検索
パズル6 ホテルの予約―重複する期間の抽出(その2)
パズル7 ファイルのバージョン管理―順序を入れ子集合で表す
パズル8 プリンタの割り当て―値の範囲に応じた結果を返す
パズル9 席空いてますか?―テーブルサイズを最小限に抑える
パズル10 年金おくれよ―連続と直近を表現する
パズル11 作業依頼―HAVING句の力(その1)
パズル12 訴訟の進行状態―最大値の集合からその最小値を取り出す
パズル13 2人かそれ以上か、それが問題だ―CASE式の中に集約関数を組み込む(その1)
パズル14 電話とFAX―外部結合の上手な使いこなし
パズル15 現在の給料と昇給前の給料―極値関数(MAX/MIN)の一般化
パズル16 主任とアシスタント―参照整合性制約の正しい設定
パズル17 人材紹介会社―関係除算と標準形
パズル18 ダイレクトメール―行同士を比較してDELETEする
パズル19 セールスマンの売上ランキング―上位3位を取り出す
パズル20 テストの結果―HAVING句の力(その2)
パズル21 飛行機と飛行士―関係除算の使い方/考え方
パズル22 大家の悩み―複雑な外部結合(その1)
パズル23 雑誌と売店―手続き型から宣言型へ考え方を切り換える(その1)
パズル24 10個のうち1つだけ―擬似配列の扱い方
パズル25 マイルストーン―行と列を入れ替える
パズル26 DFD―存在しない組み合わせを見つける
パズル27 等しい集合を見つける―集合の相等性チェック
パズル28 正弦関数を作る―内挿法を行う
パズル29 最頻値を求める―HAVING句の力(その3)
パズル30 買い物の平均サイクル―過去の直近の日付を求める
パズル31 すべての製品を購入した顧客―関係除算の応用
パズル32 税金の計算―木構造/階層構造を扱う
パズル33 機械の平均使用コスト―複雑な条件での集約計算(平均値)
パズル34 コンサルタントの請求書―複雑な条件での集約計算(期間データ)
パズル35 在庫調整―再帰集合で累計を求める
パズル36 1人2役―CASE式の中に集約関数を組み込む(その2)
パズル37 移動平均―行同士を比較するSELECT文
パズル38 記録の更新―行同士を比較してUPDATEする
パズル39 保険損失―列持ちから行持ちへ
パズル40 序列―自己結合で順列を作る
パズル41 予算―複雑な外部結合(その2)
パズル42 魚のサンプリング調査―存在しないデータの集計
パズル43 卒業―CASE式の高度な応用
パズル44 商品のペア―順列から組み合わせに変換する
パズル45 ペパロニピザ―期間別合計を求める
パズル46 販売促進―期間内での最大値
パズル47 座席のブロック―CHECK制約の中でサブクエリを使う
パズル48 非グループ化―GROUP BYの逆演算
パズル49 部品の数―データを等分割する
パズル50 3分の2―GROUP BYの効果とありがたみ
パズル51 予算と実支出の比較―集約と外部結合の合わせ技
パズル52 部署の平均人数―2段階の集約
パズル53 テーブルを列ごとに折りたたむ―自己結合とCASE式(その1)
パズル54 隠れた重複行―自己結合とCASE式(その2)
パズル55 競走馬の入賞回数―外部結合で行と列を変換
パズル56 ホテルの部屋番号―連番を入れていくUPDATE文
パズル57 欠番探し バージョン1―集合指向言語で数列を扱う(その1)
パズル58 欠番探し バージョン2―集合指向言語で数列を扱う(その2)
パズル59 期間を結合する―重複する期間をまとめる
パズル60 バーコード―手続き型から宣言型へ考え方を切り換える(その2)
パズル61 文字列をソートする―ループを使わないでソート
パズル62 レポートの整形―結果を列数固定で表示する
パズル63 連続的なグルーピング―結合条件でサブクエリを実行する
パズル64 ボックス―多次元の重複範囲を見つける
パズル65 製品の対象年齢の範囲―範囲の合算と網羅性チェック
パズル66 数独パズル―2次元配列を使う
パズル67 安定な結婚―手続き型言語と宣言型言語の違いを知る
パズル68 バスを待ちながら―時間データの扱い方(その1)
パズル69 後入れ先出しと先入れ先出し―部分和問題の解き方
パズル70 株価の動向―相関サブクエリで行同士を比較する
パズル71 計算―自己結合でクエリの見通しをよくする
パズル72 サービスマンの予約管理―時間データの扱い方(その2)
パズル73 データのクリーニング―COALESCE関数で擬似配列を扱う
パズル74 導出テーブルを減らせ―複数の外部結合を効果的に使う
パズル75 もう1軒行こう―座標と距離を扱う

↓全て表示↑少なく表示
Users Voice
SQLはネットの裏側で我々の生活を支える重要なコンピュータ言語(プログラミング言語と呼ぶかどうかは保留するとして)です。タイトルにパズルと謳われてますが、なんと本当にパズルでした。パズルを題材にとかパズル仕立てで言語を学びましょう、というスタンスの本(ならばたまに見かけますが)ではなく、パズルです。なのでSQLをある程度理解していても、時間と心の余裕がなければ入り込むことができないハードさを持っています。が、(手続き型でなく)宣言的なパラダイムでどこまでできるか見極めようという志に溢れた、興味深い本です。 (参考:honto)

↓全て表示 ↑少なく表示
SQLの技術を発展させるためのクイズ本。クイズの内容はあるデータからある形で取り出す場合のSQL文を考えるもの。最低限SQLの機能を知っていれば解説をしっかり読んで動作を試してみれば理解出来るかも。 (参考:honto)

↓全て表示 ↑少なく表示
読んでいて、なかなか頭に入ってこない内容だった。それぞれの話題が、一筋縄ではいかないような問題に取り組むため、掲載されるSQL自体が長く複雑になっていて、非常に難解に感じた。せめて、図解を使って掲載されているSQLがどういうことをしようとしているのか、説明があればよかった(文章だけじゃつらい・・・)。
これを読むぐらいなら、「達人に学ぶ SQL徹底指南書」で十分だと思う。達人〜はSQLパズルに掲載されている話題を取り上げてわかりやすく解説しているので読みやすい。
この本は、長文は苦もなく読める人でSQLが好きな人向けかな。 (参考:honto)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
著者略歴

著:ジョー・セルコ

訳:ミック


  

プログラマのためのSQL 第4版

プログラマのためのSQL 第4版
(著)ジョー セルコ
発売日 2013/05/01
総合評価
(4.1)
(2024/08/29 12:16時点)
日米のDBの達人、夢の共演! SQLの第一人者であるジョー・セルコの名著『Joe Celko's SQL for Smarties, Fourth Edition: Advanced SQL Programming』の日本語版です。本書は、SQLの実務経験があるエンジニアを対象として、SQLプログラミングの基礎的な考え方から、テーブル操作、グループ化、集計関数、クエリの最適化など、SQL全般について詳しく解説した「SQLプログラミングバイブル」です。基本から高度なテクニックまで、網羅的にSQLプログラミングの知識を習得できます。翻訳・監修は『達人に学ぶSQL徹底指南書』でおなじみのミック氏が担当。SQLエンジニア必携の1冊です。
 
内容サンプル

(引用元Amazon)

 
目次
第4版への序文
著者について
翻訳・監修にあたって──ミック
サンプルコードのダウンロード
第1章 データベース VS ファイルシステム
1.1 エンティティとしてのテーブル
1.2 関連としてのテーブル
1.3 行 VS レコード
1.4 列 VS フィールド
1.5 オブジェクトとしてのテーブル
第2章 トランザクションと同時実行制御
2.1 セッション
2.2 トランザクションとACID特性
 2.2.1 原子性(Atomicity)
 2.2.2 一貫性(Consistency)
 2.2.3 独立性(Isolation)
 2.2.4 耐久性(Durability)
2.3 同時実行制御
 2.3.1 5つの現象
 2.3.2 分離レベル
2.4 悲観的な同時実行制御
2.5 スナップショット分離と楽観的同時実行制御
2.6 論理的な同時実行制御
2.7 デッドロックとライブロック
第3章 スキーマレベルのオブジェクト
3.1 CREATE SCHEMA文
3.2 CREATE DOMAIN文
3.3 CREATE SEQUENCE文
3.4 CREATE ASSERTION文
 3.4.1 スキーマレベルの制約をビューで実現する
 3.4.2 制約のために主キーと表明を使う
3.5 キャラクタセットとそれに関連する諸概念
 3.5.1 CREATE CHARACTER SET文
 3.5.2 CREATE COLLATION文
 3.5.3 CREATE TRANSLATION文
第4章 ロケータと特別な数
4.1 露出した物理的ロケータ
 4.1.1 ROWIDと物理ディスクのアドレス
 4.1.2 IDENTITY列
4.2 生成された識別子
 4.2.1 GUID
 4.2.2 UUID
 4.2.3 業界標準の一意識別子
 4.2.4 国防総省のUID
 4.2.5 検証するための情報源
4.3 重複行について
4.4 シーケンス生成関数
 4.4.1 一意な値の生成
 4.4.2 欠番のある連番
4.5 事前に割り当てられる値
4.6 特別な数列
 4.6.1 数列テーブル
 4.6.2 素数
 4.6.3 順序のランダムな数列
 4.6.4 その他の数列
第5章 基底テーブルとそれに関連する要素
5.1 CREATE TABLE文
 5.1.1 列制約
 5.1.2 DEFAULT句
 5.1.3 NOT NULL制約
 5.1.4 CHECK制約
 5.1.5 UNIQUE制約とPRIMARY KEY制約
 5.1.6 REFERENCES句
5.2 入れ子のUNIQUE制約
 5.2.1 オーバーラップするキー
 5.2.2 一列の一意性と複数列の一意性
5.3 CREATE ASSERTION文
5.4 一時テーブル
 5.4.1 一時テーブルの宣言
5.5 テーブルを操作する
 5.5.1 DROP TABLE文
 5.5.2 ALTER TABLE文
5.6 属性分割はしてはいけない
 5.6.1 テーブルレベルの属性分割
 5.6.2 行レベルの属性分割
5.7 DDLにおけるモデリングクラスの階層
5.8 その他のスキーマオブジェクト
 5.8.1 スキーマテーブル
5.9 CREATE DOMAIN文
5.10 CREATE TRIGGER文
5.11 CREATE PROCEDURE文
第6章 手続き型プログラミング、半手続き型プログラミング、宣言型プログラミング
6.1 ソフトウェア開発の基礎
6.2 凝集度
6.3 結合度
6.4 大いなる跳躍
 6.4.1 ありがちな間違い
 6.4.2 一歩を踏み出せ
6.5 半手続き型への書き換え
 6.5.1 データテーブル対ジェネレータコード
 6.5.2 参照を計算で置き換える
 6.5.3 フィボナッチ数列
6.6 述語で使うための関数
6.7 手続き VS 論理的分解
 6.7.1 手続き的分解による解法
 6.7.2 論理的分解による解法
第7章 手続き型の遺産
7.1 CREATE PROCEDURE文
7.2 CREATE TRIGGER文
7.3 カーソル
 7.3.1 DECLARE CURSOR文
 7.3.2 ORDER BY句
 7.3.3 OPEN文
 7.3.4 FETCH文
 7.3.5 CLOSE文
 7.3.6 DEALLOCATE文
 7.3.7 カーソルの使い方
 7.3.8 位置付けられたUPDATE文またはDELETE文
7.4 シーケンス
7.5 生成列
7.6 テーブル関数
第8章 補助テーブル
8.1 数列テーブル
 8.1.1 リストの列挙
 8.1.2 数列を循環数列にマッピングする
 8.1.3 ループを置き換える
8.2 参照補助テーブル
 8.2.1 単純な読み替えを行う補助テーブル
 8.2.2 複数回の読み替えを行う補助テーブル
 8.2.3 複数のパラメータを持つ補助テーブル
 8.2.4 範囲補助テーブル
 8.2.5 階層補助テーブル
 8.2.6 単一参照テーブル
8.3 補助関数テーブル
 8.3.1 補助テーブルを使った逆関数
 8.3.2 補助関数テーブルを使った内挿
8.4 グローバル定数テーブル
第9章 正規化
9.1 関数従属性と多値従属性
9.2 第1正規形(1NF)
 9.2.1 繰り返しグループについての注意
9.3 第2正規形(2NF)
9.4 第3正規形(3NF)
9.5 基本キー正規形(EKNF)
9.6 ボイス−コッド正規形(BCNF)
9.7 第4正規形(4NF)
9.8 第5正規形(5NF)
9.9 ドメイン−キー正規形(DKNF)
9.10 正規化を行うにあたっての実践的なヒント
9.11 キーのデータ型
 9.11.1 自然キー
 9.11.2 人工的なキー
 9.11.3 露出した物理的ロケータ
9.12 非正規化に対する実践的なヒント
第10章 数値型
10.1 数値型
 10.1.1 BIT、BYTE、BOOLEANデータ型
10.2 数値型の型変換
 10.2.1 丸めと切り捨て
 10.2.2 CAST関数
10.3 四則演算
10.4 算術とNULL
10.5 値からNULL、NULLから値への変換
 10.5.1 NULLIF関数
 10.5.2 COALESCE関数
10.6 数学関数
 10.6.1 数論演算子
 10.6.2 指数関数
 10.6.3 小数を扱う関数
 10.6.4 数値から文字への変換
10.7 IPアドレス
 10.7.1 CHAR(39)形式での格納
 10.7.2 バイナリ形式での格納
 10.7.3 独立したSMALLINTでの格納
第11章 時間型
11.1 カレンダー標準についての注意事項
11.2 SQLの時間型
 11.2.1 データベース内部での時間の表現
 11.2.2 表示フォーマットの標準
 11.2.3 タイムスタンプの扱い
 11.2.4 時間の扱い
 11.2.5 タイムゾーンとサマータイム
11.3 INTERVAL型
11.4 時間の計算
11.5 時間データモデルの性質
 11.5.1 期間のモデリング
 11.5.2 期間同士の関係
第12章 文字列型
12.1 SQLの文字列における問題
 12.1.1 文字列の同値性に関する問題
 12.1.2 文字列の順序に関する問題
 12.1.3 文字列をグループ化するときの問題
12.2 標準の文字列関数
12.3 一般的なベンダー拡張
 12.3.1 音声マッチング
12.4 カッター分類法
12.5 関数を入れ子にした文字列置換
第13章 NULL:SQLにおける失われたデータ
13.1 空のテーブルと失われたテーブル
13.2 列における失われた値
13.3 文脈と失われた値
13.4 NULLの比較
13.5 NULLと論理
 13.5.1 サブクエリの述語におけるNULL
 13.5.2 論理値述語
13.6 数学とNULL
13.7 関数とNULL
13.8 NULLとホスト言語
13.9 設計上のNULLの扱いに関するアドバイス
 13.9.1 ホスト言語においてもNULLを避けるべし
13.10 NULLの複数の意味を使い分ける方法
第14章 複数列のデータ要素
14.1 距離関数
14.2 IPv4アドレスの格納方法
 14.2.1 単純なVARCHAR(15)列で格納する方法
 14.2.2 1つの整数列で格納する方法
 14.2.3 4つのSMALLINT列を使う方法
14.3 IPv6アドレスの格納方法
 14.3.1 単一のCHAR(32)列
14.4 通貨と他の単位との変換
14.5 社会保障番号
14.6 有理数
第15章 テーブルの操作
15.1 DELETE FROM文
 15.1.1 DELETE FROM句
 15.1.2 WHERE句
 15.1.3 別のテーブルに基づいた削除
 15.1.4 同一テーブルのデータを削除する
 15.1.5 参照整合性制約を使わずに複数のテーブルから削除する
15.2 INSERT INTO文
 15.2.1 INSERT INTO句
 15.2.2 INSERTの性質
 15.2.3 バルクロードとデータ抽出ツール
15.3 UPDATE文
 15.3.1 UPDATE句
 15.3.2 WHERE句
 15.3.3 SET句
 15.3.4 別のテーブルを使った更新
 15.3.5 UPDATE文でCASE式を使う
15.4 ベンダー拡張が持つ欠陥について
15.5 MERGE文
第16章 比較演算子またはシータ演算子
16.1 型変換
 16.1.1 データ表示フォーマット
 16.1.2 他の表示フォーマット
16.2 SQLにおける行比較
16.3 IS [NOT] DISTINCT FROM演算子
第17章 評価述語
17.1 IS NULL
 17.1.1 NULLが発生する理由
17.2 IS [NOT] {TRUE | FALSE | UNKNOWN} 述語
17.3 IS [NOT] NORMALIZED述語
第18章 CASE式
18.1 CASE式
 18.1.1 COALESCE関数とNULLIF関数
 18.1.2 集約関数とともにCASE式を使う
 18.1.3 CASE式、CHECK制約、条件法
18.2 ローゼンシュタインの特性関数
18.3 行のソート
第19章 LIKE述語とSIMILAR TO述語
19.1 文字列パターンのトリック
19.2 NULLおよび空文字列の結果
19.3 LIKEは同値性を意味するのではない
19.4 結合ではLIKE述語を避ける
19.5 CASE式とLIKEの検索条件
19.6 SIMILAR TO述語
19.7 文字列のトリック
 19.7.1 文字列の中身を調べる
 19.7.2 文字列の検索 VS 文字列の宣言
 19.7.3 文字列にインデックスを作る
第20章 BETWEEN述語とOVERLAPS述語
20.1 BETWEEN述語
 20.1.1 入力がNULLの場合の結果
 20.1.2 入力が空集合の場合の結果
 20.1.3 BETWEENを使ったプログラミングの小技
20.2 OVERLAPS述語
 20.2.1 時間の期間とOVERLAPS述語
第21章 [NOT] IN 述語
21.1 IN述語の最適化
21.2 ORをIN述語で置き換える
21.3 NULLとIN述語
21.4 IN述語と参照整合性制約
21.5 IN述語とスカラサブクエリ
第22章 EXISTS述語
22.1 EXISTSとNULL
22.2 EXISTSと内部結合
22.3 NOT EXISTSと外部結合
22.4 EXISTSと量化子
22.5 EXISTSと参照整合性制約
22.6 EXISTSと3値論理
第23章 量化子とサブクエリ述語
23.1 スカラサブクエリの比較
23.2 量化子と失われたデータ
23.3 ALL述語と極値関数
23.4 UNIQUE述語
第24章 単純なSELECT文
24.1 SELECT文の実行順序
24.2 1レベルのSELECT文
第25章 高度なSELECT
25.1 相関サブクエリ
25.2 標準的な構文の内部結合
25.3 外部結合
 25.3.1 外部結合の歴史
 25.3.2 NULLと外部結合
 25.3.3 自然外部結合と条件付き外部結合
 25.3.4 自己外部結合
 25.3.5 2つ以上の外部結合
 25.3.6 外部結合と集約関数
 25.3.7 完全外部結合
25.4 UNION JOIN演算子
25.5 スカラSELECT式
25.6 結合構文の新旧対決
25.7 条件付きの結合
 25.7.1 在庫と注文
 25.7.2 安定な結婚
 25.7.3 ボールの箱詰め問題
25.8 コッドのT-結合
 25.8.1 手続き型のアプローチ
第26章 仮想テーブル─ビュー、導出テーブル、共通表式、マテリアライズドクエリテーブル
26.1 クエリにおけるビュー
26.2 更新可能なビューと読み取り専用ビュー
26.3 ビューの分類
 26.3.1 単一のテーブルからの射影および制限
 26.3.2 計算列
 26.3.3 コード化された列
 26.3.4 グループ化されたビュー
 26.3.5 UNIONを使ったビュー
 26.3.6 結合を使ったビュー
 26.3.7 入れ子のビュー
26.4 データベースエンジンにおけるビューの扱い方
 26.4.1 ビューの列リスト
 26.4.2 ビューの実体化
 26.4.3 インライン展開
 26.4.4 ポインタ構造
 26.4.5 インデックスとビュー
26.5 WITH CHECK OPTION句
 26.5.1 CHECK制約としてのWITH CHECK OPTION
26.6 ビューの削除
26.7 ビューと一時テーブルのどちらを使うかの判断についてのヒント
 26.7.1 ビューの使い方
 26.7.2 一時テーブルの使い方
 26.7.3 ビューを使ったテーブルの展開
26.8 導出テーブルの使い方
 26.8.1 FROM句で導出テーブルを使う
 26.8.2 VALUES構築子を使った導出テーブル
26.9 共通表式
 26.9.1 単純な共通表式
26.10 再帰的な共通表式
 26.10.1 単純な加算
 26.10.2 単純なツリー探索
26.11 マテリアライズドクエリテーブル
第27章 クエリによるデータの分割
27.1 被覆とパーティション
 27.1.1 範囲による分割
 27.1.2 単一列の範囲テーブル
 27.1.3 関数による分割
 27.1.4 数列による分割
 27.1.5 ウィンドウによる分割
27.2 関係除算
 27.2.1 剰余を持った除算
 27.2.2 厳密な除算
 27.2.3 パフォーマンスに関する注意
 27.2.4 トッドの除算
 27.2.5 結合を使った除算
 27.2.6 集合演算を使った除算
27.3 レムレーの除算
27.4 RDBMSにおけるブール式
27.5 FIFOとLIFOの部分集合
第28章 グルーピング演算子
28.1 GROUP BY句
 28.1.1 NULLとグループ
28.2 GROUP BY句とHAVING句
 28.2.1 グループの特性とHAVING句
28.3 集約の階層
 28.3.1 グループ化したビューによる集約の階層化
 28.3.2 サブクエリによる集約の階層化
 28.3.3 CASE式による集約の階層化
28.4 計算列によるグルーピング
28.5 GROUP BY句でペアを作る
28.6 GROUP BY句とソート
第29章 単純な集約関数
29.1 COUNT関数
 29.1.1 DISTINCT付きの集約関数を最適化する
29.2 SUM関数
29.3 AVG関数
 29.3.1 データがないグループを含む平均
 29.3.2 複数列を対象にした平均
29.4 極値関数
 29.4.1 簡単な極値関数
 29.4.2 極値関数の一般化
 29.4.3 複数の基準の極値関数
29.5 LIST関数
 29.5.1 再帰共通表式とLIST関数
 29.5.2 クロステーブルとLIST関数の併用
29.6 PRD関数
 29.6.1 式によるPRD関数
 29.6.2 対数によるPRD関数
29.7 ビット単位の集約関数
 29.7.1 ビット単位のOR集約関数
 29.7.2 ビット単位のAND集約関数
第30章 高度な集約、ウィンドウ関数、OLAP
30.1 スタースキーマ
30.2 GROUPING演算子
 30.2.1 GROUP BY GROUPING SETS
 30.2.2 ROLLUP
 30.2.3 CUBE
 30.2.4 SQLによるOLAPの例
30.3 ウィンドウ句
 30.3.1 PARTITION BY句
 30.3.2 ORDER BY句
 30.3.3 ウィンドウフレーム句
30.4 ウィンドウ集約関数
30.5 順序関数
 30.5.1 ROW_NUMBER
 30.5.2 RANK関数とDENSE_RANK関数
 30.5.3 PERCENT_RANK関数とCUME_DIST関数
 30.5.4 ウィンドウ関数の使用例
30.6 ベンダー拡張
 30.6.1 LEAD関数とLAG関数
 30.6.2 FIRST_VALUE関数とLAST_VALUE関数
30.7 ウィンドウ関数小史
第31章 SQLにおける記述統計
31.1 最頻値
31.2 AVG関数
31.3 中央値
 31.3.1 プログラミング問題としての中央値
 31.3.2 特性関数を使った中央値
 31.3.3 セルコの中央値
 31.3.4 ウィンドウ関数を使った中央値
31.4 分散と標準偏差
31.5 平均偏差
31.6 累積統計
 31.6.1 累積差分
 31.6.2 累積率
 31.6.3 順序関数
 31.6.4 五分位と関連の指標
31.7 クロス表
 31.7.1 CASE式によるクロス表
31.8 調和平均と幾何平均
31.9 SQLの記述統計における多変量
 31.9.1 共分散
 31.9.2 ピアソンのr
 31.9.3 多変量の記述統計におけるNULL
31.10 SQL:2006における統計関数
 31.10.1 分散、標準偏差、記述統計
 31.10.2 相関
第32章 SQLにおける数列の扱い
32.1 大きさnのリージョンを見つける
32.2 リージョンに番号を割り振る
32.3 最も大きいリージョンを見つける
32.4 境界クエリ
32.5 ランを求めるクエリ
 32.5.1 歯抜けの穴埋め
32.6 数列の歯抜け
32.7 数列の合計
32.8 リストの値を入れ替えたり、移動させる
32.9 シーケンスの始点と終点を見つける
32.10 数のリストを折り返して表示する
32.11 オーバーラップする被覆
第33章 SQLにおける配列
33.1 名前を持った列による擬似配列
33.2 添え字列を使った配列
33.3 SQLにおける行列操作
 33.3.1 行列の相等性
 33.3.2 行列の加法
 33.3.3 行列の乗法
 33.3.4 行列の転置
 33.3.5 行列のソート
 33.3.6 その他の行列操作
33.4 テーブルを配列に展開する
33.5 テーブル形式の配列を計算する
第34章 集合演算
34.1 UNIONとUNION ALL
 34.1.1 UNIONの実行順序
 34.1.2 UNIONとUNION ALLの混在
 34.1.3 同じテーブルの列に対するUNION
34.2 INTERSECTとEXCEPT
 34.2.1 NULLと重複行がない場合のINTERSECTとEXCEPT
 34.2.2 NULLと重複行に対するINTERSECTとEXCEPT
第35章 部分集合
35.1 テーブルにおけるN番目ごとの行
35.2 テーブルからランダムな行を選択する
35.3 包含演算子
 35.3.1 真部分集合演算子
 35.3.2 テーブルの相等性
第36章 SQLで木と階層構造を扱う
36.1 隣接リストモデル
 36.1.1 複雑な制約
 36.1.2 手続き的な木の探索
 36.1.3 テーブルの更新
36.2 経路列挙モデル
 36.2.1 部分木とノードを見つける
 36.2.2 木の深さと部分木を見つける
 36.2.3 ノードと部分木の削除
 36.2.4 整合性制約
36.3 入れ子集合モデル
 36.3.1 座標からわかる情報
 36.3.2 包含関係
 36.3.3 同レベルのノード間の序列
 36.3.4 階層集約
 36.3.5 ノードと部分木を削除する
 36.3.6 隣接リストモデルを入れ子集合モデルに変換する
36.4 木と階層構造を表現するその他のモデル
第37章 SQLにおけるグラフ
37.1 グラフを隣接リストモデルで表す
 37.1.1 SQLと隣接リストモデル
 37.1.2 隣接行列モデル
37.2 グラフを入れ子集合モデルで表す
 37.2.1 グラフのすべてのノード
 37.2.2 経路の両端
 37.2.3 到達可能ノード
 37.2.4 エッジ
 37.2.5 入次数と出次数
 37.2.6 さまざまなタイプのノードを見つける
 37.2.7 非循環グラフを入れ子集合に変換する
37.3 多角形の中の点
37.4 グラフ理論の参考文献
第38章 時間を扱うクエリ
38.1 時間の計算
38.2 個人的なカレンダー
38.3 期間のシーケンス
 38.3.1 期間のシーケンスにおける欠落
 38.3.2 連続的な期間
 38.3.3 連続的な期間における失われた時間
 38.3.4 日付の引き算
 38.3.5 開始日と終了日
 38.3.6 開始時間と終了時間
38.4 ユリウス通日
38.5 その他の時間関数
38.6 週
 38.6.1 曜日によるソート
38.7 時間データのモデリング
 38.7.1 期間のペア
38.8 カレンダー補助テーブル
 38.8.1 イベントと日付
38.9 2000年問題
 38.9.1 ゼロ
 38.9.2 閏年3
 38.9.3 千年に一度
 38.9.4 レガシーデータにおける奇妙な日付
 38.9.5 2000年問題の影響
第39章 SQLの最適化
39.1 アクセス方法
 39.1.1 シーケンシャルアクセス
 39.1.2 ツリーインデックス
 39.1.3 ハッシュインデックス
 39.1.4 ビットベクトルインデックス
39.2 インデックス設計
 39.2.1 シンプルな検索条件
 39.2.2 シンプルな文字列式
 39.2.3 シンプルな時間式
39.3 その他の注意事項
39.4 複数列に対するインデックスは慎重に
39.5 IN述語には要注意
39.6 UNIONを避ける
39.7 サブクエリを避けて結合を使う
39.8 SQL文の数を減らせ
39.9 ソートを避ける
39.10 クロス結合を避ける
39.11 汝、自らのオプティマイザを知れ
39.12 スキーマが変更されたら静的SQLをリコンパイルする
39.13 一時テーブルも時には役に立つ
39.14 統計情報を更新する
39.15 新機能は信用しない
参考文献
翻訳・監修を終えて──ミック

↓全て表示↑少なく表示
Users Voice
読み物としておもしろい SQLずっと使ってますが、まだまだ知らないことあったと驚きました いま使ってフるやつの設計し直したくなりました (参考:YahooShopping)

↓全て表示 ↑少なく表示
この圧倒的な安心感!何冊も買うより、この一冊持ってるのがいいなあと思った。標準的なものすべて、すべてが載ってる、そういう感じ。
ただ、その分、分厚くて探すのが大変だったりするのは確か。一覧性に欠ける。
正規化については、この本を読んで初めてわかった気になれた。気に入ったけど……読むの疲れたな。 (参考:honto)

↓全て表示 ↑少なく表示
この圧倒的な安心感!何冊も買うより、この一冊持ってるのがいいなあと思った。標準的なものすべて、すべてが載ってる、そういう感じ。

ただ、その分、分厚くて探すのが大変だったりするのは確か。一覧性に欠ける。

正規化については、この本を読んで初めてわかった気になれた。気に入ったけど……読むの疲れたな。 (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
著者略歴
セルコ,ジョー(Celko,Joe)
著名なコンサルタント兼講師であり、SQL関係の書籍では世界で最も読まれている著者の一人。ANSI SQL標準化委員会での10年に及ぶ貢献や、『Intelligent Enterprise』誌上のコラム(読者投票による賞をいくたびも受賞)、現実世界に対する洞察をSQLプログラミングに反映する取り組みでも有名である

ミック
SI企業に勤務するDBエンジニア。主にDWH/BI分野のデータベース構築とパフォーマンスチューニングを専門としている。自身のサイト「リレーショナル・データベースの世界」でデータベースとSQLについての技術情報を公開している(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示

  
 

MySQL実用向けの参考書

SQLは、「DB操作プログラミング言語」ですので、「データベースの構築/設定」は、SQLの外の話です。

MySQLを使うと決まっていて、データベースの構築(インストールや削除等)や設定(ログイン管理等)、MySQL用のコマンド等も学びたい場合、MySQL解説付きの以下の書籍で学ぶと良いでしょう。

やさしく学べるMySQL運用・管理入門【5.7対応】

やさしく学べるMySQL運用・管理入門【5.7対応】
(著)梶山 隆輔, 山﨑 由章
発売日 2016/12/15
総合評価
(3)
(2024/09/08 12:15時点)
本書はMySQL初心者向けの学習書です。主に下記のような読者を対象にしています。

・これからMySQLシステムの運用・管理業務に携わる初級管理者

・すでにMySQLシステムの運用・管理業務に携わっているが、あまり自信のない人
・PHPでWeb-DBシステムを構築しているプログラマ

MySQLも5.7までバージョンが進み、たくさんの機能が搭載されています。これから学習する初心者にとっては、何から手を付ければ良いのか悩むのではないでしょうか。

そこで本書では、「MySQL運用・管理の現場で初心者が押えておくべき内容」にしぼって解説しています。はじめからすべてを覚える必要はありません。まずは本書でしっかり基礎を身に付けましょう。

【本書の特長】
・「必要な部分」を厳選しコンパクトにまとめられて読みやすい
・「1レッスン45分」のセミナー感覚ですんなり身に付く
・初心者でもMySQLの運用・管理で最低限押さえておくべき要素が理解できる
 
Users Voice
Webアプリケーションの開発を行うときにあまり意識を割かないデータベースの設定。
運用の視点から考えると、ファイルシステムの権限、ユーザへの管理。
実行中に出力される各種ログの設定に気を配らないといけないと思いました。
実際に検証して確認を行いながら今回の知識の裏付けをとりたいと思いました。 (参考:honto)

↓全て表示 ↑少なく表示
MySQLの完全初心者です。SQLServerやAccsessは使っていました。だから、データベースについては、初心者ではありません。残念だったのは、Accessのデータベースからのインポート方法は不十分で、結局ネットで調べて、対応できました。完全に必要な部分が、少し抜け落ちているように思います。 (参考:楽天)

↓全て表示 ↑少なく表示
 
  

基礎からのMySQL 第3版

基礎からのMySQL 第3版
(著)西沢 夢路
発売日 2017/09/22
総合評価
(4)
(2024/08/23 12:38時点)
MySQL入門書の「デファクト・スタンダード」


2012年の改訂版から5年半ぶりの改訂

データベースに触れるのが本当に初めてという方に向けて、「データベースとは何か」という基本中の基本から、MySQLを使ったデータベースの作成と操作、PHPとの連携によるWebアプリケーション作成の入り口までを、豊富な図とサンプルにより解説します。

5年間で周辺環境が変わりましたので、そちらを一新しての刊行です。


●本書の特徴
・実行可能なサンプルプログラムによる実践的解説!
・業務に必要な知識を凝縮した実用主義
・章末の練習問題により確実にスキルアップ
・開発環境とサンプルデータを弊社サポートサイトからダウンロード
できるので、すぐに学習が始められます。

●本書の対象読者
・データベースについてこれから学習したいと思っている人
・MySQLを使ったことがない人
・PHPによるプログラミングも未経験な人

●目次
・PART 01 はじめてのMySQL
CHAPTER01 MySQLの概要
CHAPTER02 MySQLの環境設定

・PART 02 MySQLの基礎知識
CHAPTER03 MySQLモニタ
CHAPTER04 データベースの作成
CHAPTER05 データ型とデータの入力
CHAPTER06 テーブルを改造する
CHAPTER07 テーブルやレコードをコピー・削除する

・PART 03 MySQLを使いこなす
CHAPTER08 いろいろな条件で抽出する
CHAPTER09 データを編集する
CHAPTER10 複数のテーブルを利用する
CHAPTER11 ビューを使いこなす
CHAPTER12 ストアドプロシージャを使いこなす
CHAPTER13 トランザクションを使いこなす
CHAPTER14 ファイルを使ったやり取り

・PART 04 MySQL+PHPの基礎
CHAPTER15 MySQLを利用するためのPHP
CHAPTER16 PHPの基礎知識
CHAPTER17 PHPスクリプトとHTML
CHAPTER18 PHPスクリプトでMySQLを操作する

・PART 05 MySQL+PHPの実践
CHAPTER19 PHPとMySQLで簡単掲示板を作る
CHAPTER20 インターネットに公開するときの対策
CHAPTER21 ちょっと実用掲示板の作成

↓全て表示↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
目次
・PART 01 はじめてのMySQL
CHAPTER01 MySQLの概要
CHAPTER02 MySQLの環境設定
・PART 02 MySQLの基礎知識
CHAPTER03 MySQLモニタ
CHAPTER04 データベースの作成
CHAPTER05 データ型とデータの入力
CHAPTER06 テーブルを改造する
CHAPTER07 テーブルやレコードをコピー・削除する
・PART 03 MySQLを使いこなす
CHAPTER08 いろいろな条件で抽出する
CHAPTER09 データを編集する
CHAPTER10 複数のテーブルを利用する
CHAPTER11 ビューを使いこなす
CHAPTER12 ストアドプロシージャを使いこなす
CHAPTER13 トランザクションを使いこなす
CHAPTER14 ファイルを使ったやり取り
・PART 04 MySQL+PHPの基礎
CHAPTER15 MySQLを利用するためのPHP
CHAPTER16 PHPの基礎知識
CHAPTER17 PHPスクリプトとHTML
CHAPTER18 PHPスクリプトでMySQLを操作する
・PART 05 MySQL+PHPの実践
CHAPTER19 PHPとMySQLで簡単掲示板を作る
CHAPTER20 インターネットに公開するときの対策
CHAPTER21 ちょっと実用掲示板の作成

↓全て表示↑少なく表示
Users Voice
漠然と、自分の本やCDのデータベースを作って、友達にも公開したいと思っていた。
将来は、レンタルサーバーに入れ、スマホアプリでどこでも検索できるように…
まずは、無料のデータベースの準備で購入した。
まったく初心者の私でも、この本だけでMySQLでデータベースは作れデータ入力できた。
MySQLの初歩はとても分かりやすかったです。この本はMySQLに重点を置いたほんなので仕方ないですが
PHPの説明はさわりだけでした。
次はPHPで初心者向けで詳しい本を探しています。その後にスマホアプリを.... (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
著者略歴

著:西沢 夢路
著書は『やさしくわかるExcel関数・マクロ』『基礎からのPHP』『基礎からのMySQL』などがある。

基礎からのMySQL 第3版
発売日 2017/09/22
(2024/08/23 12:38時点)

  

15時間でわかるMySQL集中講座

15時間でわかるMySQL集中講座
発売日 2019/10/04
総合評価
(3.3)
(2024/07/30 12:30時点)
 
  

3ステップでしっかり学ぶ MySQL入門 [改訂2版]

3ステップでしっかり学ぶ MySQL入門 [改訂2版]
(著)山田 祥寛, 山田 奈美
発売日 2018/02/17
総合評価
(3)
(2024/07/27 12:34時点)
 
Users Voice
大学の指定教材のため買いました。まあまあわかりやすいです。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
 
  

PostgreSQL本

↑のMySQL同様、データベースとしては「PostgreSQL」を使うと決まっていて、PostgreSQLの構築・設定方法も学びたい場合以下の書籍が参考になります。

[改訂新版]内部構造から学ぶPostgreSQL 設計・運用計画の鉄則 (Software Design plus)

[改訂新版]内部構造から学ぶPostgreSQL 設計・運用計画の鉄則 (Software Design plus)
(著)勝俣 智成, 佐伯 昌樹, 原田 登志
発売日 2018/09/14
総合評価
(4.4)
(2024/07/27 12:34時点)
長年、現場で培った設計・運用計画の鉄則!

本書はPostgreSQL 10をベースに解説しています。
本書では「PostgreSQLを学習、もしくは利用したことがある人」「今後、本格的にPostgreSQLの運用管理や
技術力の向上を図りたいと思っている人」を主な対象読者としています。
PostgreSQLのコアな技術力を持つ専門家の視点から、システム構築や運用時に重要な要素を、
PostgreSQLの内部構造と照らし合わせる形で解説します。
内部構造を知っているからこそわかる運用ノウハウやチューニング方法が満載です。
 
目次
1 基本編(PostgreSQL“超”入門
アーキテクチャの基本 ほか)
2 設計
計画編(テーブル設計
物理設計 ほか)
3 運用編(高可用化と負荷分散
オンライン物理バックアップ ほか)
4 チューニング編(実行計画の取得
解析
パフォーマンスチューニング)
Appendix PostgreSQLのバージョンアップ

↓全て表示↑少なく表示
Users Voice
PostgreSQL 10をベースとして広範に取り扱われている。
「PostgreSQL全機能バイブル」を読んだ後であるからか、内部構造についての説明が少ないと感じた。
個人的にはもう少し量的にも深さ的にも詳しい説明が欲しかった。
あと、もう少し図を多く使って視覚的に説明してくれると良かったと感じた。 (参考:honto)

↓全て表示 ↑少なく表示
内部処理について知りたかったので読みました。要所要所で詳しい図解がされていてとても分かりやすい。とはいえ、知識量としてはボリュームがあるので流石に一回では覚えきれないので適宜読み直します。
辞書として身の回りに置いておきたい一冊。 (参考:honto)

↓全て表示 ↑少なく表示
前著が9.3ベースにしていたので、9.4, 9.5, 9.6をへて、10をベースにしたこの本は
PostgreSQLファン待望の一冊です。(表紙の象が劇画調になっただけではありません)

9.4まではこうだった、とか。9.4以降はこうなったとか、バージョンを意識する形で
全体を初歩から俯瞰できる構成は(私にとっては)大変役立ちました。 (参考:楽天)

↓全て表示 ↑少なく表示
 
著者略歴
勝俣智成(カツマタトモナリ)
1978年生。NTTテクノクロス株式会社勤務

佐伯昌樹(サエキマサキ)
1981年生。NTTテクノクロス株式会社勤務。PostgreSQLに関わってから8年。現在はIoTやクラウドなど、システムの基盤開発に携わっている

原田登志(ハラダトシ)
NTTテクノクロス株式会社勤務(本データはこの書籍が刊行された当時に掲載されていたものです)

  

PostgreSQL徹底入門 第4版 インストールから機能・仕組み、アプリ作り、管理・運用まで

PostgreSQL徹底入門 第4版 インストールから機能・仕組み、アプリ作り、管理・運用まで
(著)近藤 雄太, 正野 裕大, 坂井 潔, 鳥越 淳
発売日 2019/10/04
総合評価
(3.8)
(2024/08/16 12:15時点)
インストールから機能・仕組み、アプリ作り、管理・運用まで
PosgreSQLの基本を一通り学べる定番入門書


PostgreSQLはオープンソースのリレーショナルデータベース管理システム(RDBMS)です。Linux、macOSといったUNIX系OSはもちろんのこと、Windowsにも対応しています。本書は、初めてPostgreSQLに触れる、あるいはそもそもデータベースに触れるのが初めてという方や、ちょっと使ったことはあるけどもう少し詳しく知りたいという方に向けた入門書です。第4版では、PostgreSQL 11をベースに全面的な改訂を行い、新旧問わずPostgreSQLの基本として初学者が押さえておくべきポイントを選別しています。

日ごろからPostgreSQLと深く関わっている執筆陣が、豊富な経験と知識をもとに、そのインストール方法、SQLの使い方から、アプリケーションの作成、そして運用にいたるまでを、さまざまな分野/視点から解説しています。また、PostgreSQLの最新の機能であるロジカルレプリケーションやパラレルクエリに関しても解説しています。

【構成】
Chapter 1 PostgreSQLについて知ろう
Chapter 2 インストール(Windows編/Linux編)
Chapter 3 WindowsでPostgreSQLを使う~かんたんpgAdminマニュアル
Chapter 4 SQL入門
Chapter 5 PHPでPostgreSQLを使う~PHPアプリケーションの作成(1)
Chapter 6 PHPでPostgreSQLを使う~PHPアプリケーションの作成(2)
Chapter 7 PostgreSQLの仕組みを理解する
Chapter 8 PostgreSQLをきちんと使う
Chapter 9 PostgreSQLをセキュアに使う
Chapter 10 PostgreSQLの動作状況を把握する
Chapter 11 PostgreSQLをメンテナンスする
Chapter 12 PostgreSQLのバックアップとリストア
Chapter 13 レプリケーションを使う


↓全て表示↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
目次
Chapter 1 PostgreSQLについて知ろう
 1.1 データベースとは
 1.2 PostgreSQLの歴史
 1.3 WindowsユーザーのためのPostgreSQL
 1.4 PostgreSQL公式Webサイトの歩き方
Chapter 2 インストール(Windows編/Linux編)
 2.1 インストールの準備
 2.2 Windowsへのインストール
 2.3 LinuxへのYumによるインストール
 2.4 PostgreSQLの起動
 2.5 サーバーの自動起動
 2.6 PostgreSQL操作入門
Chapter 3 WindowsでPostgreSQLを使う~かんたんpgAdminマニュアル
 3.1 pgAdmin 4
 3.2 サーバーの追加
 3.3 データベースの構築
 3.4 データの編集
 3.5 管理コマンドの実行
Chapter 4 SQL入門
 4.1 RDBMSを操作するための言語─SQL
 4.2 psql
 4.3 DDL(CREATE/DROP)
 4.4 DML(INSERT/SELECT/UPDATE/DELETE)
 4.5 DML(SELECTのオプション)
 4.6 DDL(インデックスと制約)
 4.7 トランザクション
 4.8 パラレルクエリ
 4.9 その他のSQLコマンド
Chapter 5 PHPでPostgreSQLを使う~PHPアプリケーションの作成(1)
 5.1 開発環境のセットアップ
 5.2 データベースプログラムを書いてみよう
Chapter 6 PHPでPostgreSQLを使う~PHPアプリケーションの作成(2)
 6.1 SNSアプリケーションを作ってみよう
 6.2 ユーザー登録とログイン処理
 6.3 タイムラインの表示
 6.4 投稿の書き込み処理/削除処理
 6.5 ログアウト処理
 6.6 フォロー/アンフォロー機能
 6.7 コメント機能
 6.8 退会処理
 6.9 まとめ
Chapter 7 PostgreSQLの仕組みを理解する
 7.1 PostgreSQLのプロセス
 7.2 PostgreSQLのデータベースファイル
Chapter 8 PostgreSQLをきちんと使う
 8.1 日本語の扱い
 8.2 チェックサム
 8.3 PostgreSQLの起動と停止
 8.4 設定──postgresql.conf
Chapter 9 PostgreSQLをセキュアに使う
 9.1 ネットワークからのアクセス制御
 9.2 ユーザーによるアクセス制御
 9.3 データベースオブジェクトへのアクセス制御
 9.4 通信の暗号化
Chapter 10 PostgreSQLの動作状況を把握する
 10.1 ログの監視
 10.2 PostgreSQLから得られる情報
 10.3 OSの情報
Chapter 11 PostgreSQLをメンテナンスする
 11.1 VACUUM
 11.2 統計情報の解析
 11.3 インデックス
 11.4 クラスタ化
 11.5 テーブル/インデックスの肥大化対策
 11.6 実行計画
 11.7 PostgreSQLのバージョンアップ
Chapter 12 PostgreSQLのバックアップとリストア
 12.1 論理バックアップと物理バックアップ
 12.2 論理バックアップ
 12.3 オフライン物理バックアップ
 12.4 オンライン物理バックアップ
Chapter 13 レプリケーションを使う
 13.1 レプリケーションとは
 13.2 ストリーミングレプリケーション環境の構築
 13.3 さまざまなレプリケーションの機能
 13.4 レプリケーションの運用

↓全て表示↑少なく表示
Users Voice
クエリは書けるが、SQLで何が行われているか、どんな仕組みが働いているかなどは知らなかった程度で読み始めました。
・セーブポイント
・トランザクション分離レベル
・パラレルクエリ
・追記型アーキテクチャ
・VACUUM
・クラスタ化
・パーサー、リライタ、プランナ/オプティマイザ、エグゼキュータ
・共有メモリバッファ
・WALバッファ
・ワークメモリ
・メンテナンスワークメモリ
・バックエンドプロセス
などについての知識が役に立ちました。 (参考:honto)

↓全て表示 ↑少なく表示
PostgreSQLをこれから使うあらゆる人にこの一冊で間違い無し。他のRDBの経験がある人、比較的RDBが初めての人両方とも満足できる内容。OSもLinux, mac, Windowsいずれの人でも特に困らない内容になっている。 (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
著者略歴
石井達夫(イシイタツオ)
SRA OSS、Inc.日本支社で支社長として経営に携わりつつ、PostgreSQL関連の研究開発を担当。PostgreSQL開発には初期の頃から関わっているほか、PostgreSQL専用のクラスタ管理ソフトPgpool-2の開発者でもある

近藤雄太(コンドウユウタ)
2013年にSRA OSS、Inc.日本支社に入社後、一貫してPostgreSQLのビジネスに従事。近年は、PostgreSQLのサポートや技術支援の担当のほか、PostgreSQLをベースにしたデータベース製品PowerGresの開発リーダーを務める

正野裕大(マサノユウタ)
2012年にSRA OSS、Inc.日本支社に入社。現在はPostgreSQLトレーニングのリーダーとして、運営管理、講師、テキスト開発を行うほか、PostgreSQLのサポートや技術支援を担当する

坂井潔(サカイキヨシ)
システムエンジニアとしてソフトウェアハウスに勤務後、フリーランス契約スタッフとして(有)第四企画に在籍。大規模企業システムなどでPostgreSQLを使ったサイト構築を行う

鳥越淳(トリコシアツシ)
株式会社NTTデータ所属。2008年頃からオープンソースソフトウェアの技術調査や案件導入に従事。PostgreSQLについては、NTTデータおよびNTT OSSセンタにてトラブルシュートや技術調査を実施してきた(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示

  

SQLリファレンス本

SQLコーディングのパターン、そして逆にやるべきでないアンチパターンなど、コードのパターンとして学ぶリファレンス的な本が以下です。

SQLアンチパターン

SQLアンチパターン
(著)Bill Karwin
発売日 2013/01/26
総合評価
(4.2)
(2024/09/08 12:15時点)
本書はDB設計やSQL記述の際に避けるべき事柄を1章で1つ、25個紹介する書籍です。
リレーショナルデータベースを中心に据えたシステム開発には、様々な場面で陥りやすい失敗(アンチパターン)があります。
本書はデータベース論理設計、データベース物理設計、クエリの記述、アプリケーション開発という4つのカテゴリに分かれて、それぞれの分野におけるアンチパターンを紹介し、失敗を避けるためのより良い方法を紹介します。
複数の値を持つ属性や再帰的なツリー構造の格納から、小数値の丸めやNULLの扱いに起因する問題、全文検索やSQLインジェクション、MVCアーキテクチャなど、実践的かつ幅広いトピックを網羅します。
データベースに関わるすべてのエンジニア必携の一冊です。
 
内容サンプル

(引用元Amazon)

 
目次
1部 データベース論理設計のアンチパターン
2部 データベース物理設計のアンチパターン
3部 クエリのアンチパターン
4部 アプリケーション開発のアンチパターン
5部 付録
Users Voice
現役Webエンジニアです。上司や同僚に勧められ購入しました。 タイトルの通りアンチパターンが多く記載されており、一通り読んだ後必要になったときに読み替えさと良さそうな本です。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
敏速な対応ありがとうございました。信頼の高いショップでした。また、購入をしたいと思います。 この度はありがとうございました。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
難しい実装あるあるについて、こうすれば良かったのか、とわかりやすく解説してくれています。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
著者略歴
カーウィン,ビル(Karwin,Bill)
ソフトウェアエンジニアとして20年以上の経験があり、アプリケーション、ライブラリ、サーバー(Zend Framework for PHP5、InterBaseリレーショナルデータベース、Enhydra Javaアプリケーションサーバーなど)の開発とサポートに携わってきた

和田卓人(ワダタクト)
タワーズ・クエスト株式会社取締役社長、プログラマ、テスト駆動開発者

和田省二(ワダショウジ)
タワーズ・クエスト株式会社代表取締役。多種多様な業種・業務形態に対してデータモデリングを行い、数多くのデータドメイン設計およびER図を作成する

児島修(コジマオサム)
英日翻訳者。1970年生。ビジネス、IT、健康、スポーツなどの分野で活躍中(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示
SQLアンチパターン
発売日 2013/01/26
(2024/09/08 12:15時点)

  

[改訂第4版]SQLポケットリファレンス

[改訂第4版]SQLポケットリファレンス
(著)朝井 淳
発売日 2017/02/18
総合評価
(4.1)
(2024/09/08 12:15時点)
大好評の「SQLポケットリファレンス」が7年ぶりのリニューアル! 改訂第4版の登場です。この7年の間にバージョンアップした各データベースの最新版に対応するとともに、軽量・コンパクトなデータベースとして利用が拡大したSQLiteにも対応。対応データベースは、Oracle、SQL Server、Access、DB2、PostgreSQL、MySQL(MariaDB)、SQLiteです。
 
内容サンプル

(引用元Amazon)

 
目次
第1部 SQLとは(SQLの基礎概念)
第2部 コマンド命令
第3部 演算子
第4部 関数
第5部 プロシージャ内で使用できる命令
第6部 プログラミングインターフェース
Appendix
Users Voice
勉強に使っていますが目的別にSQLを探せるので結構重宝しています。勉強したい方にはお勧めできる本です。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
初心者なので、勉強がてら」使っています。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
会社で必要なので、購入しました。
情報量が多いので満足です。 (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
著者略歴
朝井淳(アサイアツシ)
株式会社レイヤ・エイト所沢ラボ所長。1966年山形県生まれのシステムエンジニア兼、テクニカルライターである。最近は、組み込み系のシステム開発が多く、日々通信プロトコルと戦っている(本データはこの書籍が刊行された当時に掲載されていたものです)

  

SQLServer本

SQL Server 2016の教科書 開発編

SQL Server 2016の教科書 開発編
(著)松本 美穂, 松本 崇博
発売日 2016/07/26
総合評価
(4.2)
(2024/09/08 12:15時点)
 
目次
入門編(SQL Server 2016の概要とインストール
インストール後の構成
SQL Server 2016を使ってみよう
正規化
制約
SQLステートメントの基本(ANSI SQL92準拠)
SQLステートメントの応用(ANSI SQL92準拠)
テーブル関連の操作とデータのインポート
エクスポート
関数とユーザー定義関数
Transact-SQL(T-SQL)の基本)
開発編(データベースアプリケーションの開発
ストアドプロシージャ
トランザクションとエラー処理
ロックと分離レベル
ロックの実践と読み取り一貫性)
付録 SQL Serverへの接続方法と提供される機能のまとめ

↓全て表示↑少なく表示
Users Voice
新品を買ったつもりが中古でした。 確認不足でしたが、きれいな状態だったのでよかった。 初心者にもわかりやすく書かれているので、物足りないかなと思いましたが、なかなかに奥深い内容です。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
初心者でも理解しやすく、読みやすかった。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
SQL Server利用アプリケーション導入展開のため購入。内容はDBMS初心者向けだが、他DBMS経験者がSQL Serverドアノックのために読む本としては適度な印象。SSMSやT-SQLなど固有事項の説明に加え、OracleやDB2との比較コラムもあり、最低限の体系的知識は獲得できる。実際に手を動かして理解しながら読み進められる教科書でもある。 (参考:honto)

↓全て表示 ↑少なく表示
 
著者略歴
松本美穂(マツモトミホ)
有限会社エスキューエル・クオリティ代表取締役。Microsoft MVP for Data Platform。経産省認定データベーススペシャリスト。MCDBA(Microsoft Certified Database Administrator)/MCITPデータベースアドミニストレーター/MCSD for .NET(Microsoft Certified Solution Developer)。SQL Serverの日本における最初のバージョンである「SQL Server 4.2」からSQL Serverに携わり、現在、SQL Serverを中心とするコンサルティングを行っている

松本崇博(マツモトタカヒロ)
有限会社エスキューエル・クオリティ取締役。Microsoft MVP for Data Platform。経産省認定データベーススペシャリスト。MCDBA(Microsoft Certified Database Administrator)/MCITPデータベースアドミニストレーター/MCSD for .NET(Microsoft Certified Solution Developer)。SQL ServerのBIシステムとパフォーマンスチューニングを得意とするコンサルタント(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示

  

SQL Server Transact-SQLプログラミング 実践開発ガイド

SQL Server Transact-SQLプログラミング 実践開発ガイド
(著)五十嵐 貴之
発売日 2019/10/09
総合評価
(4.1)
(2024/09/08 12:15時点)
SQL Serverを使いこなす!

本書は、SQL Serverを現場で使用している人のための開発ノウハウを盛り込んだ書籍です。すでにSQLやSQL Serverの知識はある読者を対象に、SQL Serverの運用と管理のコツ、Transact-SQLを用いた実業務に役立つ様々な技術や知識を紹介します。ストアドプロシージャやストアドファンクションを使うことによって何が便利になるのかを知りたい人や、データベースアプリケーションの処理速度を向上させたい人にオススメです。なお、SQL Serverのバージョンは2005以降を対象にしています。
 
内容サンプル

(引用元Amazon)

 
Users Voice
商品発送の連絡がなく、突然届いてびっくりしました。 すでに図書館で借りて内容を確認したいたので、モノには満足でした。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
ビギナーレベルの自分でも理解しやすく、読みやすい。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
SQL Serverの定番本といえば、松本さんの「SQL Server 20xxの教科書」と長岡さんの「SQL Server 20xxデータベース構築・管理ガイド」(それぞれxxには年度の数値がはいる。最新はそれぞれ2016)
が有名ですが、それに加わる「第三の教科書」が本書です。

店頭で見て、私にはなにかしっくりきて、その場で衝動買いしてしまいました。なんか構成と内容が私にあうんですよね。本発売時点の最新GAである2017に対応していますし、2010年にでた2008R2以降の機能差分などもわかりやすいですし、ストアドや、DBにアクセスするコードサンプルも必要十分なものがそろっているイメージです。

他の二冊とともに、定期的に更新してほしい一冊です。 (参考:楽天)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
  

データ分析応用

前処理大全[データ分析のためのSQL/R/Python実践テクニック]

Law of Awesome Data Scientist

データサイエンスの現場において、その業務は「前処理」と呼ばれるデータの整形に
90%以上の時間を費やすと言われています。
「前処理」を効率よくこなすことで、予測モデルの構築やデータモデリングといった
本来のデータサイエンス業務に時間を割くことができるわけです。

本書はデータサイエンスに取り組む上で欠かせない
「前処理スキル」の効率的な処理方法を網羅的に習得できる構成となっています。
ほとんどの問題についてR、Python、SQLを用いた実装方法を紹介しますので、
複数のプロジェクトに関わるようなデータサイエンスの現場で重宝するでしょう。
 
内容サンプル

(引用元Amazon)

 
目次
1 入門前処理(前処理とは)
2 データ構造を対象とした前処理(抽出
集約
結合
分割
生成
展開)
3 データ内容を対象とした前処理(数値型
カテゴリ型
日時型
文字型
位置情報型)
4 実践前処理(演習問題)
Users Voice
Awesome、Not Awesomeな書き方の違いについて、わかりやすい解説がなされており、すぐに実践で使える良書です。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
とてもわかりやすいため、すぐに見れるようにしています。困ったときにすぐに調べられるので重宝しています。 (参考:honto)

↓全て表示 ↑少なく表示
実用書である。
なにかと派手な話題が多いデータサイエンスの中で、地味だが大切な前処理を取り上げている。
しかもSQL,R,Pythonの主要なツールについて併記してあり大変助かった。
今までSQLについてまったく知らなかったがなかなか奥深い分野と思われる。
第1章 前処理とは
第2章 抽出
第3章 集約
 SQLのWindow関数は大変役に立つ関数が多い
第4章 結合
 JOIN句の説明がわかりやすかった
 4-3過去データの結合、4-4全結合はとても役に立ちそう。
第5章 分割
第6章 生成
第7章 展開
 長いこと縦持ち、横持ちのことがわからなかったがpythonのpivot_tableでわかるようになった
第8章 数値型
 数値のカテゴリ化など使えそう
 数値の補完にこんな手法があったのは知らなかった(多重代入法)
第9章 カテゴリ型
 カテゴリ型は結構大切
第10章 日時型
 SQLの実行にPostgreSQLを使っていたがこの章ではエラーがでてほとんど実行できなかった
 データベースによっては方言が存在するのかな?
 10-7 平日/休日への変換は役立ちそう
第11章 文字型
 高度な内容だったので手がです
第12章 位置情報型
 今回はデータとして緯度、経度が準備されていてそれを使うだけだったが
 その位置情報そのものを集めてくるのが大変そう
まとめ
データはデータベースに置きSQLでデータを前さばきしながらPython/Rでデータ加工するのが
最強のセットかな?SQLのWindow関数をもっと知りたい。 (参考:honto)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
著者略歴
本橋智光(モトハシトモミツ)
システム開発会社の研究員、Web系企業のデータサイエンティストを経て、デジタル医療スタートアップのサスメド株式会社のCTO。株式会社ホクソエムにも所属。量子アニーリングコンピュータの検証に個人事業主として従事している。製造業、小売業、金融業、運輸業、レジャー業、Webなど多様な業種のデータ分析経験を持つ。KDD CUP 2015 2位(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示

  

ビッグデータ分析・活用のためのSQLレシピ

ビッグデータ分析・活用のためのSQLレシピ
(著)加嵜 長門, 田宮 直人
発売日 2017/03/27
総合評価
(4.2)
(2024/07/29 12:15時点)
ビッグデータ時代のSQL活用術・レシピ集

本書は、著者が普段の業務で実際に作成しているレポートやSQLのコードをより汎用化し、レシピ集としてまとめたものです。「データの加工」「売上の把握」「ユーザーの把握」「Webサイト内のユーザー行動の把握」「異常値の検出」「検索機能の評価」「レコメンド」など、具体的なシーン別に、実践的な手法とノウハウを解説しています。

●読者対象
本書では、アクセス解析等を担当する社内の分析担当者と、実装を行うエンジニアの双方を対象として、下記の情報を提示します。
・データ加工の手法
・分析に使用するSQL
・レポーティング・分析の手法
分析担当者であれば、アクセス解析ツールが提供する指標やフィルタがなくても、それ以上のことを自らで実践できるようになること、エンジニアであれば、分析業務を十分に理解して、分析担当者や経営層に対して、適切な情報提供やレポート提出、そして助言できるようになることを、目指しています。

●構成
1 ビッグデータ時代に求められる分析力とは
2 本書で扱うツールとデータ群
3 データ加工のためのSQL
4 売上を把握するためのデータ抽出
5 ユーザーを把握するためのデータ抽出
6 Webサイトでの行動を把握するためのデータ抽出
7 データ活用の精度を高めるための分析術
8 データを武器にするための分析術
9 知識に留めず行動を起こす

Chapter1~2は導入部で、Chapter1は基本を解説し、Chapter2で本書で扱うデータやミドルウェアについて説明しています。
Chapter3~8では、具体的なSQLを用いたコード例とともに、ビッグデータ活用の手法について紹介します。
Chapter3では基礎的なSQLの記述やデータ加工の手法について解説し、続くChapter4~8でデータ活用における具体的なシーン別に実践的な「分析手法」と「SQL」を解説しています。
Chapter9ではまとめとして、本書の提供する内容が知識で留まらないよう、データの活用の事例やヒントを紹介します。

●本書で扱うミドルウェア
PostgreSQL、Apache Hive、Amazon Redshift、Google BigQuery、SparkSQLで動作確認を行っています。

↓全て表示↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
目次
1 ビッグデータ時代に求められる分析力とは
2 本書で扱うツールとデータ群
3 データ加工のためのSQL
4 売上を把握するためのデータ抽出
5 ユーザーを把握するためのデータ抽出
6 Webサイトでの行動を把握するためのデータ抽出
7 データ活用の精度を高めるための分析術
8 データを武器にするための分析術
9 知識に留めず行動を起こす

↓全て表示↑少なく表示
Users Voice
本書に記載されているものは、いずれも業務で必要になりそうなものばかりなので、SQLでビッグデータを触りたい方は手元に置いておいて損はないと思います。 (参考:YahooShopping)

↓全て表示 ↑少なく表示
Chap1 ビックデータ時代に求められる分析力とは
Chap2 本書で扱うツールとデータ群
 ほぼ有名どころのDBはすべて押さえてある。
 PostgreSQLとSparkSQLがあるのがありがたい。
Chap3 データ加工のためのSQL
 この辺は基本的なデータ処理でよくまとまっていて業務に生かせそうな感じでした。3-2-6 IPアドレスを扱うでPostgreSQLにはこんな機能まであるのは驚きでした。
Chap4 売上を把握するためのデータ抽出
 時系列データの扱いは頻発するので助かる。
Chap5 ユーザーを把握するためのデータ抽出
Chap6 Webサイトでの行動を把握するためのデータ抽出
Chap7 データ活用の精度を高めるための分析術
 コードの長さが大変であるがDBでここまでできるとは思わなかった。処理するデータ量が多すぎて他のストレージに移動させることも1時間以上かかることもあるのでDB内で全てできるのは非常にありがたい。 (参考:honto)

↓全て表示 ↑少なく表示
SQLでここまでできるんだなという感想。
普段ほとんどMySQLを使っているので、ウィンドウ関数には縁がなかった。
集計はSQLの結果を何らかのプログラム言語で処理するものだと考えていたけど、SQLをもっと活用するのも面白いかもしれない。 (参考:honto)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元楽天Books)

 
著者略歴
加嵜長門(カサキナガト)
株式会社DMM.comラボ所属。慶應義塾大学大学院政策・メディア研究科修士課程修了。大学院や学生ベンチャーにて、マルチメディアデータベースを対象とした検索やレコメンドアルゴリズムの研究およびサービス開発に従事し、現在DMM.comラボではビッグデータ活用基盤の構築に携わり、SparkやSQL on Hadoopを用いたレコメンド機能、ビッグデータ活用の研究開発を担当

田宮直人(タミヤナオト)
データコンサルタント。エンジニアとして大手新聞社の関連サービス、求人サービス、コミュニティサービスの開発に携わり、株式会社サイバーエージェント在籍時にデータアナリストへ転身、株式会社DMM.comラボではマーケティング開発部マネージャーとしてビッグデータ部を立ち上げる。現在はフリーランスとして、データの解析のみならず、データ解析環境の設計・構築、ログの設計、レコメンドAPIの作成など、データに関連する業務全般を担当している(本データはこの書籍が刊行された当時に掲載されていたものです)

↓全て表示↑少なく表示

  

SQL学習書「Kindle Unlmited 読み放題 人気ランキング」

「Kindle Unlimited」は、Amazonの定額本読み放題サービス。

実はそこにSQLの本もそこそこあるんです。すなわち、定額で何冊も学習することも可能

Kindle Unlimitedの主な特徴としては、おおよそ以下の通り。

  • 雑誌がかなり充実
  • 豊富なKindle個人出版本がほとんど読み放題
  • 最近は出版社単行本も対応増加

個人的には雑誌が、IT系(CG WORLD等)、ガジェット系(Get Navi等)、ゲーム(ファミ通等)、など見たい雑誌が幅広く読めるのが大きな魅力。2冊以上読みたいものがあるだけで確実にお得です。

また、30日無料体験も可能なので、体験期間を利用して無料で学習してみるのもお得な学習法です。

以下がKindle Unlimited対応のSQLの本人気ランキング(Best10)です。

(2024/08/27 12:31 更新)
Rank製品価格
1
500円
2
500円
3
99円
4
よくわかるSQL
発売日 2019/11/17
高橋 麻奈
Kindle Unlimited対象
総合評価
(4.1)
800円
5
500円
6
599円
7
550円
8
699円
9
1,980円
(+994pt)
10
500円

 

関連:PHP、RubyなどでWebサービスとして実用しよう

SQLをおぼえたら、PHP、RubyなどのWeb開発言語と合わせて使うことで、データを活用した柔軟なサービスを作り上げていきましょう。

PHPの中でSQL文を書く、なんてことも多いです。PHP,Rubyの本も以下で紹介しています、合わせて覗いてみてください。

いじょうでっす。

コメント

タイトルとURLをコピーしました