Learn advanced database recipes

The Database Cookbook For Developers

You don't know SQL. Aside from basic CRUD statements, you haven't used any advanced database features. This free ebook will share many recipes to make development faster by using a lot of stuff you probably never heard of.

Your database knowledge is outdated

Your Tech Stack has changed dramatically in the past 20 years: Some technologies are now state-of-the-art, and some have been invented and are obsolete meanwhile. But you still use the same simple database concepts as many years ago. Every technology progresses, but databases don't invent anything new? Isn't that strange?

There have been countless improvements, but you don't know of them. When using ORM (Object-relational Mapping), most developers lose touch with database improvements as they are hidden from them. And that's good as you don't have to know every nifty detail. But when you know a little more about modern database features, you develop faster by relying on many fascinating features.

An evening is enough to attain more knowledge

Telling you that a single evening is enough to make you a database wizard is a lie. But you don't have to become one. You can take a shortcut by only learning essential features for developers. And this is exactly what this book is designed for.

This book is designed as a cookbook with many small independent recipes. Each one teaches you simple tips & tricks you can add to your application in a very short time. You should be able to read it thoroughly in a single evening and on the next day you can discuss those improvements with your colleagues. This is a whole different experience from all the books you bought but never had the time to read.

No endless pages of text, only the essential information

Table Of Contents

Data Manipulation 5
      Prevent Lock Contention For Updates On Hot Rows 6
      Updates Based On A Select Query 7
      Return The Values Of Modified Rows 8
      Delete Duplicate Rows 9
      Table Maintenance After Bulk Modifications 10
Querying Data 11
      Reduce The Amount Of Group By Columns 12
      Fill Tables With Large Amounts Of Test Data 13
      Simplified Inequality Checks With Nullable Columns 14
      Prevent Division By Zero Errors 15
      Sorting Order With Nullable Columns 16
      Deterministic Ordering for Pagination 17
      More Efficient Pagination Than LIMIT OFFSET 18
      Database-Backed Locks With Safety Guarantees 19
      Refinement Of Data With Common Table Expressions 20
      First Row Of Many Similar Ones 21
      Multiple Aggregates In One Query 22
      Limit Rows Also Including Ties 23
      Fast Row Count Estimates 24
      Date-Based Statistical Queries With Gap-Filling 25
      Table Joins With A For-Each Loop 26
Schema 27
      Rows Without Overlapping Dates 28
      Store Trees As Materialized Paths 29
      JSON Columns to Combine NoSQL and Relational Databases 30
      Alternative Tag Storage With JSON Arrays 31
      Constraints for Improved Data Strictness 32
      Validation Of JSON Colums Against A Schema 33
      UUID Keys Against Enumeration Attacks 35
      Fast Delete Of Big Data With Partitions 36
      Pre-Sorted Tables For Faster Access 37
      Pre-Aggregation of Values for Faster Queries 38
Indexes 39
      Indexes On Functions And Expressions 40
      Find Unused Indexes 41
      Safely Deleting Unused Indexes 42
      Index-Only Operations By Including More Columns 43
      Partial Indexes To Reduce Index Size 44
      Partial Indexes For Uniqueness Constraints 45
      Index Support For Wildcard Searches 46
      Rules For Multi-Column Indexes 47
      Hash Indexes To Descrease Index Size 48
      Descending Indexes For Order By 49
      Ghost Conditions Against Unindexed Columns 50

Get Your Free Copy!

I've written this book for you and many more developers to share some of my knowledge. It is entirely free, as I believe all developers should be able to know and use the extended features their database of choice provides.

This book is a giveaway to all developers. The only return I ask for is a subscription to my newsletter to share even more knowledge with as many developers as possible. If you haven't subscribed yet, you can do it now: