Home > Store

SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL, 2nd Edition

Register your product to gain access to bonus material or receive a coupon.

SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL, 2nd Edition

eBook (Watermarked)

  • Your Price: $47.99
  • List Price: $59.99
  • About Watermarked eBooks
  • This PDF will be accessible from your Account page after purchase and requires the free Adobe® Reader® software to read it.

    The eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

    Watermarked eBook FAQ


  • Copyright 2008
  • Edition: 2nd
  • eBook (Watermarked)
  • ISBN-10: 0-321-52577-9
  • ISBN-13: 978-0-321-52577-2

This is the eBook version of the printed book. If the print book includes a CD-ROM, this content is not included within the eBook version.

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.

Sample Content

Table of Contents

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" xxxii

Part 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 17

Chapter 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 51

Chapter 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 66

Part 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 103

Chapter 5: Getting More Than Simple Columns 105

Topics 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 149

Chapter 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 207

Part 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
Uses for INNER JOINs 262
Sample Statements 263
Summary 288
Problems for You to Solve 289

Chapter 9: OUTER JOINs 293

Topics Covered in This Chapter 293
What Is an OUTER JOIN? 293
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 366

Chapter 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 410

Part 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 439

Chapter 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 471

Chapter 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 496

Part V: Modifying Sets of Data 499

Chapter 15: Updating Sets of Data 501

Topics 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 534

Chapter 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 563

Chapter 17: Deleting Sets of Data 567

Topics 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 584

In Closing 587


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


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership