注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫Effective SQL:編寫高質(zhì)量SQL語句的61個(gè)有效方法

Effective SQL:編寫高質(zhì)量SQL語句的61個(gè)有效方法

Effective SQL:編寫高質(zhì)量SQL語句的61個(gè)有效方法

定 價(jià):¥69.00

作 者: [法] 約翰· L. 維卡斯 著,文浩譯 譯
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): Effective系列叢書
標(biāo) 簽: 暫缺

ISBN: 9787111600664 出版時(shí)間: 2018-07-01 包裝: 平裝
開本: 16開 頁數(shù): 239 字?jǐn)?shù):  

內(nèi)容簡介

  本書結(jié)合SQL實(shí)踐與實(shí)際案例,整合了實(shí)用的解決方案與洞見,可幫助大家解決復(fù)雜的問題,設(shè)計(jì)出能簡化數(shù)據(jù)管理的數(shù)據(jù)庫。作者擁有擔(dān)任世界數(shù)據(jù)庫顧問與講師的豐富經(jīng)驗(yàn),在本書中歸納了編寫高質(zhì)量SQL語句的61個(gè)具體方法,并提供不同SQL版本的差異詳情,無論你使用何種SQL版本都能從中獲益。書中提供了大量清晰、務(wù)實(shí)的解釋,以及專家的建議與大量實(shí)用的代碼。本書除了介紹語法之外,還會(huì)討論數(shù)據(jù)庫設(shè)計(jì)的佳實(shí)踐、層次結(jié)構(gòu)管理與元數(shù)據(jù)等議題。若你對SQL已經(jīng)有基本的認(rèn)識,本書將能幫助你成為解決SQL問題的專家。書中內(nèi)容涵蓋各種SQL版本:IBMDB2、MicrosoftAccess、MicrosoftSQLServer、MySQL、OracleDatabase與PostgreSQL。

作者簡介

暫缺《Effective SQL:編寫高質(zhì)量SQL語句的61個(gè)有效方法》作者簡介

圖書目錄

目  錄 Contents

本書贊譽(yù)

譯者序



前言

致謝

關(guān)于作者

關(guān)于技術(shù)編輯

第1章 數(shù)據(jù)模型設(shè)計(jì)1

第1條:確保所有表都有主鍵1

第2條:避免存儲冗余數(shù)據(jù)4

第3條:消除重復(fù)數(shù)據(jù)組7

第4條:每列只存儲一個(gè)屬性9

第5條:理解為什么存儲計(jì)算列通常有害無益13

第6條:定義外鍵以確保引用完整性16

第7條:確保表間關(guān)系的合理性19

第8條:當(dāng)?shù)谌妒讲粔驎r(shí),采用更多范式22

第9條:非規(guī)范化數(shù)據(jù)倉庫27

第2章 可編程性與索引設(shè)計(jì)30

第10條:創(chuàng)建索引時(shí)空值的影響30

第11條:創(chuàng)建索引時(shí)謹(jǐn)慎考慮以最小化索引和數(shù)據(jù)掃描35

第12條:索引不只是過濾37

第13條:不要過度使用觸發(fā)器41

第14條:使用過濾索引包含或排除數(shù)據(jù)子集45

第15條:使用聲明式約束替代編碼校驗(yàn)47

第16條:了解數(shù)據(jù)庫使用的SQL方言并編寫相應(yīng)的代碼48

第17條:了解何時(shí)在索引中使用計(jì)算結(jié)果51

第3章 當(dāng)你不能改變設(shè)計(jì)時(shí)55

第18條:使用視圖來簡化不能更改的內(nèi)容55

第19條:使用ETL將非關(guān)系數(shù)據(jù)轉(zhuǎn)換為有用的信息60

第20條:創(chuàng)建匯總表并維護(hù)64

第21條:使用UNION語句將非規(guī)范化數(shù)據(jù)列轉(zhuǎn)行66

第4章 過濾與查找數(shù)據(jù)72

第22條:了解關(guān)系代數(shù)及其如何在SQL中實(shí)現(xiàn)72

第23條:查找不匹配或缺失的記錄78

第24條:了解何時(shí)使用CASE解決問題79

第25條:了解解決多條件查詢的技術(shù)83

第26條:如需完美匹配,先對數(shù)據(jù)進(jìn)行除操作88

第27條:如何按時(shí)間范圍正確地過濾日期和時(shí)間的列91

第28條:書寫可參數(shù)化搜索的查詢以確保引擎使用索引94

第29條:正確地定義“左”連接的“右”側(cè)97

第5章 聚合100

第30條:理解GROUP BY的工作原理100

第31條:簡化GROUP BY子句106

第32條:利用GROUP BY或HAVING解決復(fù)雜的問題109

第33條:避免使用GROUP BY來查找最大值或最小值113

第34條:使用OUTER JOIN時(shí)避免獲取錯(cuò)誤的COUNT()117

第35條:測試HAVING COUNT(x) <>

第36條:使用DISTINCT獲取不重復(fù)的計(jì)數(shù)123

第37條:知道如何使用窗口函數(shù)126

第38條:創(chuàng)建行號與排名129

第39條:創(chuàng)建可移動(dòng)聚合函數(shù)131

第6章 子查詢136

第40條:了解在何處使用子查詢136

第41條:了解關(guān)聯(lián)和非關(guān)聯(lián)子查詢的差異140

第42條:盡可能使用公共表表達(dá)式而不是子查詢145

第43條:使用連接而非子查詢創(chuàng)建更高效的查詢151

第7章 獲取與分析元數(shù)據(jù)154

第44條:了解如何使用系統(tǒng)的查詢分析器154

第45條:學(xué)習(xí)獲取數(shù)據(jù)庫的元數(shù)據(jù)164

第46條:理解執(zhí)行計(jì)劃的工作原理168

第8章 笛卡兒積175

第47條:生成兩張表所有行的組合并標(biāo)示一張表中間接關(guān)聯(lián)另一張表的列175

第48條:理解如何以等分量排名177

第49條:知道如何對表中的行配對181

第50條:理解如何列出類別與前三偏好185

第9章 計(jì)數(shù)表189

第51條:根據(jù)計(jì)數(shù)表內(nèi)定義的參數(shù)生成空行189

第52條:使用計(jì)數(shù)表和窗口函數(shù)生成序列193

第53條:根據(jù)計(jì)數(shù)表內(nèi)定義的范圍生成行196

第54條:根據(jù)計(jì)數(shù)表定義的值范圍轉(zhuǎn)換某個(gè)表中的值199

第55條:使用日期表簡化日期計(jì)算205

第56條:創(chuàng)建在某個(gè)范圍內(nèi)所有日期的日程表209

第57條:使用計(jì)數(shù)表行轉(zhuǎn)列212

第10章 層次數(shù)據(jù)建模217

第58條:從鄰接列表模型開始218

第59條:對不常更新的數(shù)據(jù)使用嵌套集以提升查詢性能220

第60條:使用存儲路徑簡化設(shè)置與搜索222

第61條:使用祖先遍歷閉包做復(fù)雜搜索224

附錄 日期與時(shí)間類型、運(yùn)算符和函數(shù)228

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號