Amazon.com Customer Reviews
grammar-based approach can't get off the ground - Review written on August 29, 2006
Rating: 2 out of 5
36 customers found this review helpful, 3 did not.
It seems like most of the people writing reviews for this book already know databases to some degree. I didn't, so I'd like to share my experience.
This book takes an old-school, grammatical approach to the SQL language, grouping related commands into chapters, then explaining each, one by one.
This makes the first part of the book exhilarating. You go to the O'Reilly website and download a database to work on, and immediately you are querying, updating, etc, using the examples from the book. SQL at first seems refreshingly direct and powerful compared to the (OO) programming languages I know.
However, the 'a command followed by long verbal explanation" approach completely falls apart when the content goes even a little deeper. For me, the book took a nosedive at the first "Joins" chapter, and never recovered.
It was then I realized that I had not yet firmly grasped what a 'foreign key" was, so it was hard to get my head around the the idea of a join.
A simple graph would have helped at many points, but there are no graphs.
Nor are the code examples embedded in meaningful contexts or test cases. Indeed, the reasons for writing the code are almost in every case revealed AFTER the code is shown ("in that last query, the intent was..."), and the code is never commented, which makes it harder to understand and retain. And without any context, it is difficult to understand WHY to use one command over another. It seems like you can skin a cat a million ways in SQL--so why prefer one kind of filtering to another? Performance, readability, what?
I guess it sounds like I just wanted this book to be a 'Head First'-type book, and that's true. But even on its own terms, this book is frustrating. Its pure emphasis on the language somehow skips syntax, and the long verbal explanations are constantly seesawing away from themselves ("as we will see", "as we have seen").
I've finished the book and feel reasonably confident about using SQL now. So this book is serviceable...but unnecessarily painful, too.
HIGHLY RECOMMNDED FOR DATABASE DEVELOPERS AND ADMINISTRATORS!! - Review written on April 21, 2006
Rating: 5 out of 5
8 customers found this review helpful.
Are you working with relational databases and writing applications, performing administrative tasks, or generating reports? If you are, you're in luck! Author Alan Beaulieu, has done an outstanding job of writing a book that will show you how to interact with the data in your database.
Beaulieu, begins by exploring the history of computerized databases, including the rise of the relational model and the SQL language. Then, he demonstrates how to create a MySQL database, create the tables used for the examples in this book, and populate the tables with data. The author continues by introducing the select statement and further demonstrating the most common clauses. Next, he demonstartes the different types of conditions that can be used in the where clause of a select, update, or delete statement. Then, the author shows you how queries can utilize multiple tables via table joins. He continues with a discussion about data sets and how they can interact within queries. Then, he demonstrates several built-in functions used for manipulating or converting data. The author continues by showing you how data can be aggregated. Next, he introduces the subquery and shows how and where they can be utilized. Then, the author further explores the various types of table joins. He continues by exploring how conditional logic can be utilized in select, insert, update, and delete statements. Then, the author introduces transactions and shows how to use them. Finally, he explores indexes and constraints.
While this most excellent book demonstrates many of the SQL schema statements, the main focus of this book is on programming features. Filled with example code, you may use some of the code in this book in your programs and documentation. Basically, this book is here to help you get your job done--whatever it may be.
A Really Great Book!!! - Review written on March 25, 2006
Rating: 5 out of 5
4 customers found this review helpful.
The author's style of providing informative narrative reinforced by actual query, makes learning unavoidable. While so many other SQL books get bogged down discussing all possible query options before appropriate, making it hard to stay awake, this book is refreshingly balanced. Also, the end of chapter quizzes are quite challenging, but if you find yourself stuck, simply review the chapter queries. Sure enough, the solutions are all there right in front of you in the example queries, in case you missed it on the first pass. So, nothing is left to chance; everything is covered.
In addition, when an ANSI SQL spec such as the intersect, SET Operator is not supported in MySQL (or in Oracle for that matter), the author comes out and tells you, but discusses it for completeness.
This is a quite an exceptional technical book, in fact I'd place it in my top five.
Beats "SQL for Dummies" Hands Down - Review written on March 04, 2006
Rating: 5 out of 5
27 customers found this review helpful, 1 did not.
Like everyone else, I'm pressed for time. It's all I can do to keep up with Java, let alone related incidental technologies such as SQL, JavaScript, HTML, Ant, etc. But as one reviewer pointed out: make no mistake, you need to know SQL. And if you don't (hell, even if you do), this is just a flat-out good book to have and read. I had previously purchased and read "SQL for Dummies", but threw that book out when I got this one. (To be honest, it wasn't just this book that made me toss the "Dummies" book; I never really liked it to begin with.)
I like the way "Learning SQL" is written. Sure, facts are presented, but the author does a masterful job of telling you how and why those facts exist. In addition, the conversational tone of the book proceeds along the path you'd expect from a real conversation: from the simpler to the more complex, in a logical and sensical path. (Okay, so most conversations don't fall into that category. But this book sure does, so do yourself a favor and buy it!)
Oh, and one more thing related to being pressed for time: it's not the technical-typical 700+ pages, it's just a few hundred.
Good investment - Review written on November 29, 2005
Rating: 5 out of 5
4 customers found this review helpful.
This is a great way to get started with SQL. It is a well-written book by a person that obviously enjoys using SQL. The examples are very instructive and the text is very clear and concise. The books gets the reader started very quickly using MySQL as the examples database. With the exception of some limitations, MySQL is a good choice.
Moving beyond the basic query, the book follows a logical progression into joins, set theory, data conversion, grouping and aggregates, and sub-queries. Outer joins, the case expression, transactions, and indexes and constraints are also covered. I particularly liked the chapter on the sub-queries. Starting with the third chapter, each chapter ends a set of exercises to reinforce the learning experience. The solutions are in the appendices. Another nice feature is the further resources. It has recommendations for enhancing your knowledge based on your needs (developer, DBA, etc.).
There is a lot about this book to recommend it. It covers its subject well, it is an interesting read, it builds on the fundamentals, and there is enough depth that an experienced developer may benefit. It mentions many of the differences in the SQL implementation between MySQL and other popular databases, mainly Microsoft SQL Server and Oracle.
Perhaps an additional chapter on triggers and stored procedures could be added to the second edition. In the mean time, I believe that I have a few queries that could be cleaned up.
Excellent choice for learning SQL... - Review written on October 24, 2005
Rating: 5 out of 5
14 customers found this review helpful.
To all my Notes/Domino developer colleagues, here's a tip you already know... it's time to learn SQL. If it's been on your list of "things to learn or brush up on", I'd recommend the book Learning SQL by Alan Beaulieu. It's an excellent way to get up to speed (or *back* up to speed).
Contents: A Little Background; Creating and Populating a Database; Query Primer; Filtering; Querying Multiple Tables; Working with Sets; Data Generation, Conversion, and Manipulation; Subqueries; Joins Revisited; Conditional Logic; Transactions; Indexes and Constraints; ER Diagram for Example Database; MySQL Extensions to the SQL Language; Solutions to Exercises; Further Resources; Index
Notes/Domino 7 incorporates the ability to store your Domino data in a DB2 repository. Then using Data Access Views, you can create application views that use SQL statements to generate the selection formula. While you don't absolutely *have* to know SQL, it'd be a good time to start adding that skill to your repertoire. Beaulieu's book is a clearly written tutorial on SQL that uses the open source MySQL database package to teach you the necessary skills. I like the decision to use MySQL, as it's something that's free and available to everyone. Trying to get DB2 up and running can be difficult, and it's definitely overkill if you're just trying to learn SQL. When you finish this book, you'll know all the key concepts that will allow you get data out of (and put data into) any relational database table out there. Obviously that's a valuable skill to have in your toolbox...
So... commit to picking up a new skill or two in the upcoming year. I'd recommend that one of those skills be a fundamental knowledge of SQL, and Learning SQL can help you get there.
SQL 101 - Review written on October 17, 2005
Rating: 5 out of 5
10 customers found this review helpful.
Over the past 30+ years programming languages (popular ones) have come, gone, and new ones seem to appear every couple of years or so. FORTRAN, COBOL, Pascal, C, C++, Java, and now C#... the question isn't IF the next big language is going to come but WHEN. While the way we program has changed, the de facto standard for talking and creating databases hasn't changed much since the early 70s when SQL was created. While refined and standardized several times since its inception, SQL remains the tried and true backbone way of communicating with all databases, whether they are Oracle, SQL Server, MYSql, Access, etc.
For this reason, it is not only important, but I believe ESSENTIAL for all developers in this day and age to come quickly up to speed and learn what SQL is because no matter who you are, at some point (probably sooner than later) you will have to use SQL in your development career. Back when I was introduced to SQL in the mid 90s I knew nothing of what SQL was, thrown into it by immediately looking at SELECT queries, INSERTS, and so on. I would have loved some overview teaching guide to help me get my feet wet, instead learning the hard way.
Have no fear, those days are over.
With 'Learning SQL', Alan Beaulieu gives a great overview of what SQL is and what makes it so important in the world today. More than any other programming language, databases are what keeps the world moving on a daily basis, whether it's the financial sector, health care, government, etc. No matter where you using a computer, you will be accessing a database and for that data to be grabbed and manipulated, you will need to use SQL to make your calls/updates.
O'Reilly has a storied tradition of making great "Learning" books, and the same can easily be said here as well. I find it amazing that it took so long for a Learning SQL book to come out, but sometimes it's better to wait and let the finished product be even better with age.
Highlights include:
History of SQL (background)
Creating and populating a database
Using SELECT statements to get data
Filtering data with conditions
Querying multiple tables at once
Working with sets (UNIONS et al)
Data generation, conversion, manipulation
GROUP statements
Creating subqueries
JOINS in detail
Adding conditional logic
The importance of Transactions
Performance gains via Indexes and Constraints
For anyone that isn't a SQL expert, this is a great refresher for all. For anyone that is new or an amateur in their SQL careers, this book is absolutely a gem.
This should be required reading for all database 101 students, and I give it an A+ for not only the content within but the simplicity with which it is to read.
***** HIGHEST POSSIBLE RECOMMENDATION
Programmers, please read! - Review written on October 07, 2005
Rating: 5 out of 5
43 customers found this review helpful, 4 did not.
If you're writing any type of database driven code and you think that you don't need to understand SQL, read this book. You do need to understand it, and this book teaches it very well.
Man, I'm so tired of cleaning up bad SQL code. Code that makes hundreds of queries when one would suffice. Or tables that have no primary keys. Or code that never makes use of joins. SQL is not horrible. It's worth understanding and knowing how to write well.
This book is well written, well illustrated, and makes learning SQL as pain-free as it can be. Please, please, please, read this book.