Slashdot Mirror


SQL Fundamentals

Slashdot's own Robo takes a look at SQL Fundamentals, writing "This beginner book takes a traditional look at the ever-popular Structured Query Language. Never bothered to learn SQL? Here's your chance. SQL Fundamentals, by John Patrick, takes a 834-page beginners look at the application of SQL to Access and Oracle. Read more for SQL Fundamentals' strengths, weaknesses and everything in-between." SQL Fundamentals author John Patrick pages 800 publisher Pearson Education rating 7 reviewer Rob ("robo") Oostendorp ISBN 0130669474 summary Truly a beginner friendly book for anyone needing a crash course in the basics of SQL; of limited but real use to those who already are familiar with SQL.

This beginner book takes a traditional look at the ever-popular Structured Query Language. Never bothered to learn SQL? Here's your chance. SQL Fundamentals, by John Patrick, takes the first layer of SQL in Access and Oracle [robo, I find this a confusing phrase, not sure how best to recast, but somehow] and sums it up in this 834-page manual. Read more for SQL Fundamental's strengths, weaknesses and everything in-between.

The Basics SQL Fundamentals discusses the practical realities of extracting information from a database. Patrick shows the reader how to use SQL in both Oracle and Access. The book starts with a brief overview of the roots of SQL and relational databases; after this introduction, the book covers select statements and the basics of a query. Each chapter builds on the next, and the book follows a simple progression, adding complexity as it goes along.

This book is a very easy read -- it flows much better than a textbook, yet still conveys the information it promises. However, it's definitely for newcomers to SQL. So, if you have any experience in SQL this would not be the best choice. (Chapter 1 explains the concepts of a cell, row, column, and table, which might be enough to let you decide if this book is at the right level for you.) Throughout the book, the author relies on applying each newly introduced concept to a single relational database example. This hypothetical database (a table of employees trying to calculate their meal credits) makes the book feel consistent, and helps eliminate confusion about where the example information comes from, but it's also limiting for readers who want a broader range of examples.

One of the greatest strengths of this book is its wealth of code examples and accompanying tables. In contrast to many other manuals, this book illustrates queries along with their effects on the tables. Other SQL books (ones I consider going up to "layer 2" SQL) have many example queries, but some of them fail to show any sort of results from their example tables. Also, much of the code in SQL Fundamentals is well documented, with footnotes explaining any changes that occurred.

Caution: Beginner Book The book is called SQL Fundamentals. However, in this case, the fundamentals are only as they apply to the Oracle and Access databases. It mentions the existence of other distributions at the beginning of the book: "Oracle, Access, DB2, MS SQL, Informix, SQL Windows, Sybase, SAS sql procedure, FoxPro, dBase, Tandem SQL, MySQL, SQLBase, Cold Fusion, SAP, Business Objects, ODBC, Ingres, Ocelot SQL, OsloData, PostgreSQL, Rapid SQL, XDB, SQL/DS, Mini SQL, Empress, Interbase, Progress, Supra, SQL Report Writer, Paradox, Delphi, VAX SQL, Essbase, Beagle SQL, GNU SQL Server, Just Logic/SQL, PrimeBase, Altera SQL Server, DataScope, and PowerBuilder." However, Patrick never speaks of them again; perhaps he should re-title this book SQL Fundamentals: Applied to Oracle and Access? Readers considering this book should keep this in mind. The book explains things well, but the book's overall logic is geared toward those using one of those databases, and the examples are relevant only in that context.

I primarily use MySQL and Progress, so a book explaining SQL fundamentals applied to Access and Oracle isn't going to help me unless I specifically take on projects which use these particular databases. Also, The book often goes into unneeded repetition of subjects: for instance, the first 150 pages are all about select statements. I've never seen so many select statements picking apart one table. I personally think it would benefit from being trimmed down, and leaving further study to the reader.

The Plug I would recommend this book to a newcomer to SQL. It covers the fundamentals just like it claims. After finishing this book, you will have a grasp on things ranging from the most basic select statements to unions, self joins, & cross-joins.

Something to consider might be what SQL database you will be working with. If you'll be working with either Oracle or Access this book will be helpful. If not, I suggest looking at things like Managing Using MySQL by O'Reilly.

Finally, from the text comes this concise answer to the question "Who Should Read This Book?"

Everyone with an interest in getting information from a database can read this book. It can be a first book about databases for people who are new to the subject. You do not need to be a computer programmer. The discussion begins at the beginning and it does not assume any prior knowledge about databases.

That seems like a fair summary; with the caveats already mentioned, I can recommend it for newcomers to SQL looking for a thorough but not patronizing introduction.

You can purchase SQL Fundamentals from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

13 of 215 comments (clear)

  1. Anyone Know? by laeraun2 · · Score: 3, Funny

    When the SQL to this book will be out? Har de har har har.

    --
    Error: Erection reset by beer.
  2. Outstanding book by Anonymous Coward · · Score: 0, Funny

    I recommend this book highly!

    Knowing SQL today is like being a literate man in the 15th century.

    It's a must have!

  3. some thoughs by lfourrier · · Score: 2, Funny

    about the book:
    It mentions the existence of other distributions at the beginning of the book: "... and PowerBuilder."
    I know I stopped using PowwerBuilder with the version 7, and the version 9 is out, but at that time, it was not a SQL database, only a client for SQL databases.

    about SQL:
    SQL is a langage with which it is really easy to obtain a result that is not what you intended.

  4. What a waste of trees :-( by Anonymous Coward · · Score: 1, Funny

    A "7"! Nowhere near the standard "9".

    I weep for the murdered trees who gave their lives for this. :-(

  5. Re:The age old question... by beacher · · Score: 4, Funny

    It's Microsoft Squeeeeeal! Server (say it in your best deliverance voice )

    Todd

  6. Re:I don't get it! by binaryDigit · · Score: 3, Funny

    Actually for most /.ers you would get a nice fat result set back, however, you'd be forced to do an inner join with the "LikelyToBeInterestedInASlashdotReadingNerd" table and then you'd get no results.

  7. Don't click on slashdot book link by RedWolves2 · · Score: 2, Funny
  8. Re:I don't get it! by r_j_prahad · · Score: 4, Funny

    Typical view error...

    CREATE VIEW girls AS SELECT * FROM slashdot WHERE sex = "F"

    ... returns an empty set iteself, so your subselect isn't going to do you any good, naturally.

  9. Perfect opportunity for OSS in gov't by Anonymous Coward · · Score: 1, Funny

    With the Free Software Movement gaining steam. MySQL is the perfect vehicle for getting more Free Software used in government.

    The IRS and Social Security should run all of their databases with MySQL!

  10. Or what about... by Vaulter · · Score: 2, Funny


    I here you. I always get confused with 'C'. Is it pronounced "See"? Or as I like to refer to it: "C".

    My coworkers like to read the "Fack" when they need help. If people ask me, I just tell them to consult the "Fa" "Q".

    --
    I don't have a sig...Do you??
  11. Life query by DarkHelmet · · Score: 2, Funny
    select * from Programmers where MysqlKnowledge = 1 AND SexLife = 1;

    > Error, column SexLife does not exist in this table.

    --
    /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
  12. Re:The age old question... by mtDNA · · Score: 4, Funny


    Dear Slash-Dotters,

    I can't believe how clueless you guys are. Everybody knows it's Structured QUERy Language, or
    SQUERL, which is properly pronounced _SQUIRREL_.

    Sincerely,
    Steve

    --


    If you watch TV news, you know less about the world than if you just drank gin straight from the bottle.
  13. Re:834 pages?! by duffer_01 · · Score: 2, Funny

    Did you not read it includes working with Oracle? I am surprised they could get it in under 1000 pages.