Murach's MySQL 3rd Edition

Author: Joel Murach
Publisher: Mike Murach
Pages: 628
ISBN: 978-1943872367
Print: 1943872368
Audience: MySQL developers
Rating: 5
Reviewer: Kay Ewbank

This new edition of a popular title brings the material up to date to cover MySQL 8, and covers newer MySQL features such as window functions, Common Table Expressions (CTE), and roles for database security.


Like other Murach titles, this book uses a paired-page layout where new ideas are described on the left-hand page, and the right-hand page is used for examples of the concepts being introduced. So if the use of the Extract function to parse dates and times is described in words on the left-hand page, on the right-hand page you'll get the reference of the Extract function, a list of date and time units you can use in Extract, and some examples that use the Extract function.

Banner

I like this style of presentation; it's not chatty and discursive, but it covers the material in a detailed way with good examples that you can refer to without wading through descriptions.

The book starts by introducing MySQL, with chapters on relational databases, the MySQL Workbench, and retrieving data from a single table and multiple tables, as well as insert, update and deleting data, all done using SQL.
 

murachmysql

Section 2 moves on to summary queries, subqueries, data types and functions. The chapter on summary queries goes as far as aggregate functions, group by, having, where, with rollup and grouping operators. It also looks at coding aggregate window functions and the use of frames. The chapter on subqueries started with adding subqueries to the Where clause, the use of In, All, and putting subqueries in Having, Select and From. It also looked at working with complex queries and using Common Table Expressions.
 
Section 3's topic is database design and implementation - enough for a big book in its own right. I don't know how well this section works; the material was well presented, but I'm not sure a page on designing a data structure that has instructions on 'identify the data elements; subdivide each element into its smallest useful components' would get you very far if you didn't know what you were doing. However, the book does show the commands you can use and gives examples of their use. The section goes on to show creating databases, tables, indexes and views.
 
The next section is probably the one of most interest to our audience - stored program development. It kicks off with a chapter on the language elements you need and how to write procedural code. There's a good chapter on transactions and locking, with a subsection on working with concurrency and locking. Chapters on stored procedures and functions, and working with triggers and events complete this section.
 
The final part of the book is on database administration. There are useful chapters on securing a database and backing up and restoring a database. Two appendixes end the book looking at how to install MySQL for Windows and MacOS.
 
This is a thorough book, and the topics are covered well, including new material such as window functions and Common Table Expressions (CTE). One point to note is that the book is very similar to the equivalent Murach title for SQL Server - MySQL specifics are all correct, but much of the general material is presented without much change. That's not necessarily a criticism, just an observation if you happen to already have the SQL Server version of the book. Overall, this is a good, solid book that presents everything you need to use MySQL.
 
 

Banner


SQL Server 2017 Developer's Guide

Author: Dejan Sarka et al
Publisher: Packt Publishing
Pages: 816
ISBN: 978-1788476195
Print: 1788476190
Kindle: B078WBVRN8
Audience: SQL Server devs & architects
Rating: 4.2
Reviewer: Ian Stirk

 

This book’s title is misleading, it actually describes the salient new and enhanc [ ... ]



The Rust Programming Language

Author: Steve Klabnik and Carol Nichols
Publisher: No Starch Press
Date: June 2018
Pages: 552
ISBN: 978-1593278281
Print: 1593278284
Kindle: B071YKRV8Q
Audience: Systems programmers
Rating: 4.8
Reviewer: Mike James

Rust has been getting a lot of attention - what's the fuss all about? This is the standa [ ... ]


More Reviews