SQL Queries for Mere Mortals - John L. Viescas, Michael J. Hernandez

SQL Queries for Mere Mortals

A Hands-On Guide to Data Manipulation in SQL
Media-Kombination
672 Seiten
2007 | 2nd edition
Addison-Wesley Educational Publishers Inc
978-0-321-44443-1 (ISBN)
63,95 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Unless you are working at a very advanced level, this is the only SQL book you will ever need. The authors have taken the mystery out of complex queries and explained principles and techniques with such clarity that a "Mere Mortal" will indeed be empowered to perform the superhuman. Do not walk past this book!
--Graham Mandeno, Database Consultant

SQL Queries for Mere Mortals provides a step-by-step, easy-to-read introduction to writing SQL queries. It includes hundreds of examples with detailed explanations. This book provides the tools you need to understand, modify, and create SQL queries
--Keith W. Hare, Convenor, ISO/IEC JTC1 SC32 WG3--the International SQL Standards Committee

I learned SQL primarily from the first edition of this book, and I am pleased to see a second edition of this book so that others can continue to benefit from its organized presentation of the language. Starting from how to design your tables so that SQL can be effective (a common problem for database beginners), and then continuing through the various aspects of SQL construction and capabilities, the reader can become a moderate expert upon completing the book and its samples. Learning how to convert a question in English into a meaningful SQL statement will greatly facilitate your mastery of the language. Numerous examples from real life will help you visualize how to use SQL to answer the questions about the data in your database. Just one of the "watch out for this trap" items will save you more than the cost of the book when you avoid that problem when writing your queries. I highly recommend this book if you want to tap the full potential of your database.
--Kenneth D. Snell, Ph.D., Database Designer/Programmer

I don't think they do this in public schools any more, and it is a shame, but do you remember in the seventh and eighth grades when you learned to diagram a sentence? Those of you who do may no longer remember how you did it, but all of you do write better sentences because of it. John Viescas and Mike Hernandez must have remembered because they take everyday English queries and literally translate them into SQL. This is an important book for all database designers. It takes the complexity of mathematical Set Theory and of First Order Predicate Logic, as outlined in E. F. Codd's original treatise on relational database design, and makes it easy for anyone to understand. If you want an elementary- through intermediate-level course on SQL, this is the one book that is a requirement, no matter how many others you buy.
--Arvin Meyer, MCP, MVP

Even in this day of wizards and code generators, successful database developers still require a sound knowledge of Structured Query Language (SQL, the standard language for communicating with most database systems). In this book, John and Mike do a marvelous job of making what's usually a dry and difficult subject come alive, presenting the material with humor in a logical manner, with plenty of relevant examples. I would say that this book should feature prominently in the collection on the bookshelf of all serious developers, except that I'm sure it'll get so much use that it won't spend much time on the shelf!
-- Doug Steele, Microsoft Access Developer and author

Over the last several decades, SQL has evolved from a language known only to computer specialists to a widely used international standard of the computer industry. The number of new applications deployed each year using SQL now totals in the millions. If you are accessing corporate information from the Internet or from an internal network, you are probably using SQL. This new edition of SQL Queries for Mere Mortals helps new users learn the foundations of SQL queries, and is an essential reference guide for intermediate and advanced users.

The accompanying CD contains five sample databases used for the example queries throughout the book in four different formats: Microsoft SQL Server 2000 and later, Microsoft Access 2000 and later, MySQL version 5.0 and later, and SQL scripts that can be used with most other implementations of the language.

John L. Viescas is an independent consultant with more than 40 years of experience. He began his career as a systems analyst, designing large database applications for IBM mainframe systems. He spent six years at Applied Data Research in Dallas, Texas, where he directed a staff of more than 30 people and was responsible for research, product development, and customer support of database products for IBM mainframe computers. While working at Applied Data Research, John completed a degree in business finance at the University of Texas at Dallas, graduating cum laude. John joined Tandem Computers, Inc., in 1988, where he was responsible for the development and implementation of database marketing programs in Tandem's U.S. Western Sales region. He developed and delivered technical seminars on Tandem's relational database management system, NonStop SQL, in a geographic area spanning Hawaii to Colorado and Alaska to Arizona. John wrote his first book, A Quick Reference Guide to SQL (Microsoft Press, 1989), as a research project to document the similarities in the syntax among the ANSI-86 SQL standard, IBM's DB2, Microsoft's SQL Server, Oracle Corporation's Oracle, and Tandem's NonStop SQL. He wrote the first edition of Running Microsoft Access (Microsoft Press, 1992) while on sabbatical from Tandem. He has since written four editions of Running, two editions of Microsoft Office Access Inside Out (Microsoft Press, 2004 and 2007--the successor to the Running series), and Building Microsoft Access Applications (Microsoft Press, 2005). John formed his own company in 1993. He provides information systems management consulting for a variety of small to large businesses around the world, with a specialty in the Microsoft Access and SQL Server database management products. He maintains offices in Nashua, New Hampshire, and Paris, France. He has been recognized as a "Most Valuable Professional" every year since 1993 by Microsoft Product Support Services for his assistance with technical questions on public support forums. You can visit John's Web site at www.viescas.com. Michael J. Hernandez is a veteran database developer with more than 20 years of experience developing applications for a wide variety of clients in diverse industries. Mike specializes in relational database design and is the author of the best-selling database design book Database Design for Mere Mortals, Second Edition (Addison-Wesley, 2004). He has worked with SQL throughout his career, developing applications using SQL-based databases such as Microsoft Access and Microsoft SQL Server. He has also been a contributing author and technical editor to various database-related books and periodicals. Mike became a full-time employee at Microsoft in 2002. He initially was the Community Program Manager for the Visual Studio Tools for Office (VSTO) Team, leading and managing the team's developer community engagement efforts. In 2006, Mike became the Product Manager for VSTO, becoming responsible for helping to guide the strategic future of the product and promoting VSTO to customers and developers via a variety of venues. As he has done so often throughout his career, Mike often speaks at developer events, conferences, and user group meetings across the nation and around the world. In a previous life, Mike had a career as a musician and performed for audiences far and wide. He attributes both his easygoing presentation style and his ability to connect with an audience to his days as a performer. Ever the musician, Mike formed a band from members of the VSTO team and gets to play his beloved guitar before new crowds and audiences. He still tinkers on his guitar quite a bit, stealing a few minutes here and there between meetings at work. Mike enjoys the little things in life, such as spending long hours at Barnes & Noble, sipping a tall Americano at Starbucks, puffing on a fine cigar, and riding his mountain bike along with his wife, Kendra.

Foreword xvii
Preface xix
About the Authors xxi
Introduction xxiii Are You a Mere Mortal? xxiii
About This Book xxiv
What This Book Is Not xxv
How to Use This Book xxvi
Reading the Diagrams Used in This Book xxvii
Sample Databases Used in This Book xxx
"Follow the Yellow Brick Road" xxxiiPart I: Relational Databases and SQL 1 Chapter 1: What Is Relational? 3 Topics Covered in This Chapter 3
Types of Databases 3
A Brief History of the Relational Model 4
Anatomy of a Relational Database 6
What's in It for You? 15
Where Do You Go from Here? 16
Summary 17Chapter 2: Ensuring Your Database Structure Is Sound 19 Topics Covered in This Chapter 19
Why Is This Chapter Here? 19
Why Worry about Sound Structures? 20
Fine-Tuning Fields 21
Fine-Tuning Tables 30
Establishing Solid Relationships 42
Is That All? 50
Summary 51Chapter 3: A Concise History of SQL 53 Topics Covered in This Chapter 53
The Origins of SQL 54
Early Vendor Implementations 55
". . . And Then There Was a Standard" 56
Evolution of the ANSI/ISO Standard 58
Commercial Implementations 64
What the Future Holds 65
Why Should You Learn SQL? 65
Summary 66Part II: SQL Basics 69 Chapter 4: Creating a Simple Query 71 Topics Covered in This Chapter 71
Introducing SELECT 72
The SELECT Statement 73
A Quick Aside: Data versus Information 75
Translating Your Request into SQL 77
Eliminating Duplicate Rows 84
Sorting Information 87
Saving Your Work 92
Sample Statements 93
Summary 102
Problems for You to Solve 103Chapter 5: Getting More Than Simple Columns 105Topics Covered in This Chapter 105
What Is an Expression? 106
What Type of Data Are You Trying to Express? 107
Changing Data Types: The CAST Function 110
Specifying Explicit Values 112
Types of Expressions 117
Using Expressions in a SELECT Clause 128
That "Nothing" Value: Null 135
Sample Statements 139
Summary 147
Problems for You to Solve 149Chapter 6: Filtering Your Data 151 Topics Covered in This Chapter 151
Refining What You See Using WHERE 151
Defining Search Conditions 156
Using Multiple Conditions 178
Nulls Revisited: A Cautionary Note 193
Expressing Conditions in Different Ways 197
Sample Statements 198
Summary 206
Problems for You to Solve 207Part III: Working with Multiple Tables 211 Chapter 7: Thinking in Sets 213 Topics Covered in This Chapter 213
What Is a Set, Anyway? 214
Operations on Sets 215
Intersection 216
Difference 222
Union 228
SQL Set Operations 233
Summary 242 Chapter 8: INNER JOINs 243 Topics Covered in This Chapter 243
What Is a JOIN? 243
The INNER JOIN 244
Uses for INNER JOINs 262
Sample Statements 263
Summary 288
Problems for You to Solve 289Chapter 9: OUTER JOINs 293 Topics Covered in This Chapter 293
What Is an OUTER JOIN? 293
The LEFT/RIGHT OUTER JOIN 295
The FULL OUTER JOIN 314
Uses for OUTER JOINs 318
Sample Statements 319
Summary 335
Problems for You to Solve 335 Chapter 10: UNIONs 339 Topics Covered in This Chapter 339
What Is a UNION? 339
Writing Requests with UNION 342
Uses for UNION 352
Sample Statements 353
Summary 365
Problems for You to Solve 366Chapter 11: Subqueries 369 Topics Covered in This Chapter 369
What Is a Subquery? 370
Subqueries as Column Expressions 372
Subqueries as Filters 377
Uses for Subqueries 392
Sample Statements 394
Summary 409
Problems for You to Solve 410Part IV: Summarizing and Grouping Data 413 Chapter 12: Simple Totals 415 Topics Covered in This Chapter 415
Aggregate Functions 416
Using Aggregate Functions in Filters 428
Sample Statements 431
Summary 438
Problems for You to Solve 439Chapter 13: Grouping Data 441 Topics Covered in This Chapter 441
Why Group Data? 442
The GROUP BY Clause 444
"Some Restrictions Apply" 454
Uses for GROUP BY 458
Sample Statements 459
Summary 470
Problems for You to Solve 471Chapter 14: Filtering Grouped Data 473 Topics Covered in This Chapter 473
A New Meaning of "Focus Groups" 474
When You Filter Makes a Difference 478
Uses for HAVING 486
Sample Statements 487
Summary 496
Problems for You to Solve 496Part V: Modifying Sets of Data 499Chapter 15: Updating Sets of Data 501Topics Covered in This Chapter 501
What Is an UPDATE? 501
The UPDATE Statement 502
Uses for UPDATE 516
Sample Statements 517
Summary 533
Problems for You to Solve 534Chapter 16: Inserting Sets of Data 537 Topics Covered in This Chapter 537
What Is an INSERT? 537
The INSERT Statement 539
Uses for INSERT 550
Sample Statements 552
Summary 562
Problems for You to Solve 563Chapter 17: Deleting Sets of Data 567Topics Covered in This Chapter 567
What Is a DELETE? 567
The DELETE Statement 568
Uses for DELETE 575
Sample Statements 576
Summary 583
Problems for You to Solve 584In Closing 587 APPENDICES 589 Appendix A: SQL Standard Diagrams 591
Appendix B: Schema for the Sample Databases 60
Appendix C: Date and Time Functions 607
Appendix D: Suggested Reading 615 Index 617

Erscheint lt. Verlag 4.10.2007
Verlagsort New Jersey
Sprache englisch
Maße 178 x 234 mm
Gewicht 996 g
Themenwelt Mathematik / Informatik Informatik Datenbanken
Mathematik / Informatik Informatik Software Entwicklung
ISBN-10 0-321-44443-4 / 0321444434
ISBN-13 978-0-321-44443-1 / 9780321444431
Zustand Neuware
Haben Sie eine Frage zum Produkt?