Practical SQL The Sequel

Judith S. Bowman

  • 出版商: Addison Wesley
  • 出版日期: 2000-12-15
  • 定價: $1,360
  • 售價: 6.0$816
  • 語言: 英文
  • 頁數: 352
  • 裝訂: Paperback
  • ISBN: 0201616386
  • ISBN-13: 9780201616385
  • 相關分類: SQL
  • 立即出貨(限量) (庫存=3)

買這商品的人也買了...

商品描述


Description

The business problem-solving sequel to the best selling, The Practical SQL Handbook.

  • Built around real business problems and solutions, not SQL features.
  • The perfect "next step" for SQL-literate professionals ready to go far beyond the basics.
  • CD-ROM: real-world example databases and complete Sybase Adaptive Server Anywhere database system to run them on.
In the real world, the SQL challenges you're likely to face go far beyond the "generic" basics taught by most books. Whether you're maintaining existing SQL code, enhancing it, or writing entirely new applications, you need to review all kinds of SQL, understand what's going on "under the hood," and translate SQL's features into real tools for solving problems. In Practical SQL: The Sequel, Judith Bowman builds on her best-selling Practical SQL, delivering techniques and code you can use right now to write queries that solve even your most complex problems. Organized around categories of problems -- not abstract SQL features -- Practical SQL: The Sequel includes extensive proven code that has been tested against multiple leading RDBMS systems. Bowman offers detailed solutions for controlling data displays using character, number, and date functions; cleaning dirty data; and translating values using a variety of methods. There's a full chapter on managing multiples. Finally, Bowman presents numbering solutions, and techniques for tuning queries. An extensive sample database is included, along with a single source reference containing information about leading SQL dialect variants. For every intermediate-to-advanced level database and business professional who wants to use SQL more effectively.

Judith S. Bowman has been involved in databases since the early 1980s at Sybase and other database companies, in publications, sales, technical marketing, product marketing, and engineering. She has been an independent database consultant since 1994. Bowman is lead author of The Practical SQL Handbook (Addison Wesley), 0-201-44787-8.

Back to Top


Table Of Contents

List of Tables.
List of Figures.
Acknowledgments.
1. Introduction.
In This Chapter.
Why This Book?
Use, Not Feature.
Lots of Examples.
Multiple Systems.
Legacy.
Tuning.

Who This Book Is For.
Contents.
Chapters.
Appendices.

Speaking Multiple SQLs.
SQL Engines.
SQL Dialects.

Following Conventions.
Text.
Code.

Understanding the MSDPN Database.
Table Details.
Customer.
Supplier.
Product.
Ordermaster.
Orderdetail.
Employee.

Using the Examples.
Summary.

2. Handling Dirty Data.
In This Chapter.
Dirty Data.
Case.
Sort Order.
UPPER and LOWER in Searches.
UPPER and LOWER in UPDATE.
UPPER and LOWER with Dates.
INITCAP.

Space.
Removing Spaces.
Additional Features.

Size.
Actual Size.
Defined Size.

LIKE.
Quoting Wildcards with ESCAPE.
LIKE Variants.
Datatypes and LIKE.

Position of Expression in Expression.
How LOCATE Works.
Using LOCATE Functions.

Sounds Like.
BETWEEN.
Dealing with Dates.
Converting Dates (and Other Datatypes).
Doing Math on Dates.
Finding Dates.

Summary.

3. Translating Values.
In This Chapter.
Why Translate?
CASE/DECODE.
CASE.
DECODE.
CASE/DECODE Variations.

Translating NULL.
COALESCE/ISNULL/NVL.
Finding the First Non-NULL: COALESCE.
NULLIF.

Point Functions.
Getting CASE Effects from Functions and Column Values.
Getting CASE Effects from Multiple Functions.

UNION.
How UNION Works.
UNION and NULL.
UNION Problems?

Joins and Outer Joins.
Joins and NULL Values.
Outer Joins.

Subqueries.
Subqueries and Displays.
Embedded Correlated Subqueries.
Correlated and Non-Correlated Subqueries.
Another Conditional Expression: TRANSLATE.

Summary.

4. Managing Multiples.
In This Chapter.
What's the Issue with Multiples?
Duplicates.
Duplicates and a Holding Table.
Using ROWID to Remove Duplicates.

Near Duplicates.
Self Join.
Unequal Joins.
SIMILAR.

Locating Disconnected Rows.
Using Outer Joins.
Using NOT IN Subqueries.
Using MINUS.

Counting Items.
Grouping by a Subset.
Locating the Critical Element.
Groups and Outer Joins.

Figuring Distribution.
Checking Detail against Master.
Two Products Together?
HAVING.

Summary.

5. Navigating Numbers.
In This Chapter.
Auto-Numbering.
ASA: Default.
Transact-SQL: Column Property.
Microsoft SQL Server: IDENTITY (start, increment).
Sybase Adaptive Server Enterprise: IDENTITY.
Oracle: CREATE SEQUENCE.
Informix: SERIAL Datatype.
Associated Issues.

Finding the High Value.
GROUP BY, COUNT, HAVING MAX (COUNT).
FROM Subquery.
Row Counts of Various Sorts.

Row Numbers.
System Numbers.
You Make the Numbers.

Top N: Six Approaches.
1: Row Limits and ORDER BY.
2: Row Numbers and HAVING.
3: Subquery.
4: Nested Subqueries.
5: Aggregates & Many Copies.
6: Cursors.

Finding Every Nth.
What Modulo Is.
Modulo in WHERE and HAVING.
Back to Nth Row.

Running Total.
Summary.

6. Tuning Queries.
In This Chapter.
Perform, #%&#@!
The Basic Problem.
The Optimizer and Tools for Understanding It.
Getting Information on Indexes.
Checking the Optimizer.
SQL Conventions.

WHERE Clause.
Why a Table Scan?
Data Distribution Statistics.
Disabling an Index with a Bad WHERE.
Comparing Columns in the Same Table.
Using Non-Selective Indexes.
Doing Math on a Column.
Using Functions.
Finding Ranges with BETWEEN.
Matching with LIKE.
Comparing to NULL.
Negating with NOT.
Converting Values.
Using OR.
Finding Sets of Values with IN.
Using Multi-Column Indexes.

Covering Indexes.
Joining Columns.
Sorting.
DISTINCT.
UNION.
WHERE.

HAVING and WHERE.
Views.
Forcing Indexes.
Summary.
Asking Performance Questions.
USING SQL TO WRITE SQL.

In This Chapter.
Systematically Speaking.
System Catalogs.
Listing System Catalogs.
Writing Queries Using System Catalogs.

System Functions.
Getting Administrative Information.
Finding Today's Date.

Writing SQL with SQL.
GRANTing Permissions.
Removing Junk Objects.

Creating Test Data.
Summary.

Appendix A. Understanding the Sample.
In This Appendix.
MegaSysDataProNet Co.
Collecting the CREATE Scripts.
Adaptive Server Anywhere.
Sybase Adaptive Server Enterprise.
Microsoft SQL Server.
Oracle.
Informix.

Explaining the INSERT Scripts.
INSERT INTO customer.
INSERT INTO supplier.
INSERT INTO product.
INSERT INTO employee.
INSERT INTO ordermaster.
INSERT INTO orderdetail.

Experimenting and Transaction Management.
Removing Data and Objects: DROP and DELETE Commands.
Remove Database.
DROP Commands.
DELETE FROM Command.

Summary.

Appendix B. Comparing Datatypes and Functions.
In This Appendix.
Comparatively Speaking.
Datatype Comparison.
Function Comparison.
Character (String) Functions.
Number Functions.
Date Functions.
Conditional Functions.
Sequential Number Methods.
Row Number and Row ID Methods.
Other Functions.
Tuning Functions.
System Functions.

Join Syntax Comparison.
Notes on Environment and Display.
Summary.

Appendix C. Using Resources.
In This Appendix.
Books.
General.
Informix.
Microsoft SQL Server.
mSQL/MySQL.
Oracle.
Sybase.
Transact-SQL.

Web Sites.
Database Vendors.
Other Offerings.

Newsgroups.

Index. 0201616386T04062001


Back to Top

商品描述(中文翻譯)

《實用SQL:續集》是暢銷書《實用SQL手冊》的商業問題解決續集。本書圍繞真實的商業問題和解決方案展開,而不是SQL的功能特性。對於已經熟悉SQL並希望深入了解的專業人士來說,這是一個完美的「下一步」。附帶CD-ROM,其中包含真實世界的範例數據庫和完整的Sybase Adaptive Server Anywhere數據庫系統。在現實世界中,你可能會面臨的SQL挑戰遠遠超出了大多數書籍所教授的「通用」基礎知識。無論你是維護現有的SQL代碼、增強它,還是編寫全新的應用程序,你都需要審查各種SQL,了解其內部運作原理,並將SQL的功能轉化為解決問題的實際工具。在《實用SQL:續集》中,Judith Bowman在她的暢銷書《實用SQL》的基礎上,提供了可以立即使用的技巧和代碼,用於編寫解決最複雜問題的查詢。《實用SQL:續集》按照問題類別組織,而不是抽象的SQL特性,包括大量經過多個領先的關聯式數據庫管理系統測試的成熟代碼。Bowman提供了詳細的解決方案,用於使用字符、數字和日期函數控制數據顯示;清理髒數據;以及使用各種方法翻譯值。書中還有一整章關於管理多個數據庫。最後,Bowman介紹了編號解決方案和調優查詢的技巧。書中附有一個廣泛的示例數據庫,以及一個包含有關主要SQL方言變體的信息的單一來源參考資料。適用於所有中高級數據庫和商業專業人士,他們希望更有效地使用SQL。Judith S. Bowman自20世紀80年代初以來一直從事數據庫工作,曾在Sybase和其他數據庫公司擔任出版、銷售、技術營銷、產品營銷和工程等職位。她自1994年起擔任獨立數據庫顧問。Bowman是《實用SQL手冊》(Addison Wesley)的主要作者,書號為0-201-44787-8。

目錄:
1. 簡介
2. 處理髒數據