《圖靈程式設計叢書:SQL基礎教程》是2013年人民郵電出版社出版的圖書,作者是MICK。
基本介紹
- 中文名:圖靈程式設計叢書:SQL基礎教程
- 作者:MICK
- 譯者:孫淼
- 出版時間:2013年08月
- 出版社:人民郵電出版社
- 頁數:294 頁
- ISBN:9787115322692
- 開本:16 開
內容簡介,作者簡介,媒體推薦,圖書目錄,
內容簡介
亞馬遜五星暢銷書!
SQL菜鳥晉級必備,資深資料庫工程師總結的實用寶典
72張圖表 + 186段代碼,明示各RDBMS的異同
《SQL基礎教程》介紹了關係資料庫以及用來操作關係資料庫的SQL語言的使用方法,提供了大量的示例程式和詳實的操作步驟說明,讀者可以親自動手解決具體問題,循序漸進地掌握SQL的基礎知識和技巧,切實提高自身的編程能力。在每章結尾備有習題,用來檢驗讀者對該章內容的理解程度。另外,《SQL基礎教程》還將重要知識點總結為“法則”,方便大家隨時查閱。 《SQL基礎教程》適合完全沒有或者具備較少編程和系統開發經驗的初學者,也可以作為大中專院校的教材及企業新人的培訓用書。 介紹了關係資料庫以及用來操作關係資料庫的SQL語言的使用方法,提供了大量的示例程式和詳實的操作步驟說明,讀者可以親自動手解決具體問題,循序漸進地掌握SQL的基礎知識和技巧,切實提高自身的編程能力。在每章結尾備有習題,用來檢驗讀者對該章內容的理解程度。另外本書還將重要知識點總結為“法則”,方便大家隨時查閱。
作者簡介
MICK
日本資深資料庫工程師,致力於商業智慧型和數據倉庫的開發。為日本著名的IT雜誌WEB+PRESS撰寫專欄。著作有《達人SQL完全指南》、《達人SQL設計終極指南》,譯著有《SQL謎題》、《SQL權威指南》等。
孫淼
專業從事對日軟體設計和研發工作,曾於2007年至2009年赴日學習工作。精通J2EE和資料庫開發,熱衷於品嘗和製作美食。
羅勇
專業從事對日軟體設計和研發工作,曾於2007年至2009年赴日學習工作。精通J2EE和資料庫開發。譯有《NoSQL資料庫入門》、《明解C語言》等。
媒體推薦
★ 資深資料庫工程師MICK給初學者的完美教科書,期待已久。現在市面上針對初學者的SQL書不少,但它們或偏重於講解某一資料庫,或偏學術,講解晦澀,對實際工作幫助不大。而本書提供了大量的示例程式和通俗易懂的操作步驟說明,可謂是最實用、最現代的SQL指南 。
★ 果真最適合零基礎的初學者。字裡行間都能感受到作者的諄諄苦心。各類RDBMS都有涉及,講解通俗易懂、實例豐富、涵蓋面廣。可謂是“不偏科的SQL教材”。
★ 涵蓋作者個人主頁上介紹的SQL實用技巧,我邊學邊按照書中的介紹,自己安裝PostgreSQL,獲益匪淺。我相信讀完本書後,個人能力會更上一層樓。
圖書目錄
前言 III
關於本書 IV
讀者對象 IV
學習本書前的預備知識 IV
本書涉及的關係資料庫 V
本書的學習安排 V
隨書光碟簡介 VI
第1章 資料庫和SQL 1
1—1 資料庫是什麼 3
我們身邊的資料庫 3
為什麼DBMS那么重要 4
DBMS種類 6
1—2 資料庫的結構 8
RDBMS的常見系統結構 8
表的結構 10
1—3 SQL概要 13
標準SQL 13
SQL語句及其種類 14
SQL的基本書寫規則 15
1—4 表的創建 18
表的內容的創建 18
資料庫的創建(CREATEDATABASE語句) 19
表的創建(CREATETABLE語句) 19
命名規則 21
數據類型的指定 22
約束的設定 24
1—5 表的刪除和更新 25
表的刪除(DROPTABLE語句) 25
表定義的更新(ALTERTABLE語句) 26
向Shohin表中插入數據 27
練習題 30
第2章 查詢基礎 31
2—1 SELECT語句基礎 33
列的查詢 33
查詢出表中所有的列 35
為列設定別名 36
常數的查詢 38
從結果中刪除重複行 38
根據WHERE語句來選擇記錄 41
注釋的書寫方法 43
算術運算符 45
需要注意NULL 46
比較運算符 48
對字元串使用不等號時的注意事項 50
不能對NULL使用比較運算符 53
2—3 邏輯運算符 56
NOT運算符 56
AND運算符和OR運算符 58
通過括弧進行強化 60
邏輯運算符和真值 62
含有NULL時的真值 64
練習題 66
第3章 聚合與排序 67
3—1 對表進行聚合查詢 69
聚合函式 69
計算表中數據的行數 70
計算NULL以外數據的行數 71
計算合計值 72
計算平均值 74
計算最大值和最小值 75
使用聚合函式刪除重複值(關鍵字DISTINCT) 77
3—2 對表進行分組 79
GROUPBY子句 79
聚合鍵中包含NULL的情況 81
使用WHERE子句時GROUPBY的執行結果 82
與聚合函式和GROUPBY子句有關的常見錯誤 84
3—3 為聚合結果指定條件 89
HAVING子句 89
HAVING子句的構成要素 92
相對於HAVING子句,更適合寫在WHERE子句中的條件 93
3—4 對查詢結果進行排序 96
ORDERBY子句 96
指定升序或降序 98
指定多個排序鍵 99
NULL的順序 99
在排序鍵中使用顯示用別名 100
ORDERBY子句中可以使用的列 102
不要使用列編號 102
練習題 104
第4章 數據更新 105
4—1 數據的插入(INSERT語句的使用方法) 107
什麼是INSERT 107
INSERT語句的基本語法 108
列清單的省略 111
插入NULL 111
插入默認值 112
從其他表中複製數據 114
4—2 數據的刪除(DELETE語句的使用方法) 117
DROPTABLE語句和DELETE語句 117
DELETE語句的基本語法 117
指定刪除對象的DELETE語句(搜尋型DELETE) 118
4—3 數據的更新(UPDATE語句的使用方法) 121
UPDATE語句的基本語法 121
指定條件的UPDATE語句(搜尋型UPDATE) 122
使用NULL進行更新 123
多列更新 124
4—4 事務 126
什麼是事務 126
創建事務 127
ACID特性 132
練習題 133
第5章 複雜查詢 135
5—1 視圖 137
視圖和表 137
創建視圖的方法 139
視圖的限制①——定義視圖時不能使用ORDERBY子句 142
視圖的限制②——對視圖進行更新 143
刪除視圖 147
5—2 子查詢 148
子查詢和視圖 148
子查詢的名稱 151
標量子查詢 151
標量子查詢的書寫位置 154
使用標量子查詢時的注意事項 155
5—3 關聯子查詢 156
普通的子查詢和關聯子查詢的區別 156
關聯子查詢也是用來對集合進行切分的 159
結合條件一定要寫在子查詢中 160
練習題 161
第6章 函式、謂詞、CASE表達式 163
6—1 各種各樣的函式 165
函式的種類 165
算術函式 166
字元串函式 170
日期函式 178
轉換函式 182
6—2 謂詞 186
什麼是謂詞 186
LIKE謂詞——字元串的部分一致查詢 186
BETWEENT謂詞——範圍查詢 190
ISNULL、ISNOTNULL——判斷是否為NULL 191
IN謂詞——OR的簡便用法 192
使用子查詢作為IN謂詞的參數 193
EXIST謂詞 198
6—3 CASE表達式 202
什麼是CASE表達式 202
CASE表達式的語法 202
CASE表達式的使用方法 203
練習題 209
第7章 集合運算 211
7—1 表的加減法 213
什麼是集合運算 213
表的加法——UNION 213
集合運算的注意事項 216
包含重複行的集合運算——ALL選項 217
選取表中公共部分——INTERSECT 218
記錄的減法——EXCEPT 219
7—2 聯結(以列為單位對表進行聯結) 222
什麼是聯結 222
內聯結——INNERJOIN 223
外聯結——OUTERJOIN 228
3張以上表的聯結 231
交叉聯結——CROSSJOIN 234
特定的聯結語句和過時的語法 237
練習題 242
第8章 SQL高級處理 243
8—1 視窗函式 245
什麼是視窗函式 245
視窗函式的語法 246
語法的基本使用方法——使用RANK函式 246
無須指定PARTITIONBY 249
專用視窗函式的種類 250
視窗函式的適用範圍 251
作為視窗函式使用的聚合函式 252
計算移動平均 254
兩個ORDERBY 257
8—2 GROUPING運算符 259
同時計算出合計值 259
ROLLUP——同時計算出合計值和小計值 260
GROUPING函式——讓NULL更加容易分辨 265
CUBE——用數據來搭積木 267
GROUPINGSETS——取得期望的積木 269
練習題 270
附錄A 安裝PostgreSQL 271
附錄B 在PostgreSQL中執行SQL的方法 278
附錄C 練習題答案 284