by Markus Winand.

Big News In Databases

There’s been a lot of big news in 2016, also when it comes to databases. Let’s have a look at the really BIG news.

MySQL and MariaDB Become Modern

For a long time, MySQL and MariaDB were mostly limited to the functionality of SQL-92. Now, both of them have decided to move forward by supporting the WITH and OVER clauses in their next major release (MySQL 8.0, MariaDB 10.2). The MariaDB beta release already supports both features while the current MySQL “lab release” only currently supports the WITH clause.

Parallel Execution in PostgreSQL 9.6

Commercial databases have been able to do it for decades, but in the open source database scene it is quite unique: Since release 9.6, PostgeSQL can execute single queries on multiple cores and thus make better use of modern hardware for data-intensive queries. At the moment, only some special cases can take advantage of in-query parallelism. The next releases will gradually extend this functionality. Speaking of next releases: The next major PostgreSQL release will be 10.

SQL Server on Linux (Beta)

A beta of the next version of SQL Server (currently called “vNext”) was released, also for Linux. On supported distributions (Red Hat, Ubuntu) the installation is carried out by the regular package manager. Furthermore, Microsoft provides Docker images. The “What’s New” list of vNext is rather modest from a developer’s perspective. However, SQL Server is finally getting STRING_AGG. It’s also worth noting that CREATE OR ALTER was added to SQL Server 2016 SP1, which was released at the same time that vNext beta went public.

Oracle 12cR2 Currently Cloud Only

First off, Version 12.2 of the Oracle Database hast already been released. Interestingly, you cannot download it. Cloud first seems to be the new strategy for Oracle. For developers the new release is not very exciting anyway: Error handling for CASE and LISTAGG, approximate aggregates and of course more JSON. Find the full list in the “New Features” documentation.

DB2 Learns OFFSET…Unfortunately

DB2 for Linux, UNIX and Windows (abbrevated LUW) has gotten release 11.1 earlier this year. The general theme of the new SQL features was compatibility. It seems like IBM aims to support every single SQL dialect out there, and one part of this is that DB2 supports the SQL:2011 OFFSET clause even without enabling the MySQL compatibility vector. This is a big setback from my No-Offset movement!

SQLite Gets Row-Values

SQLite is compensating for this by introducing row values support in version 3.15.0—the SQL-92 feature that often makes life without OFFSET more easy. If you don’t know about No-Offset yet, you should definitively read this article.

About the Author

Photo of Markus Winand

Markus Winand is the SQL Renaissance Ambassador. He is on a mission to introduce developers to the evolution of SQL in the 21st century. Markus can be hired as trainer, speaker and consultant via

Buy his Book on Amazon

Cover of “SQL Performance Explained”: Squirrel running on grass

The essence of SQL tuning in 200 pages

Buy on Amazon
(paperback only)

Paperback and PDF also available at Markus’ store.

Hire Markus

Markus offers SQL training and consulting for developers working at companies of any size.
Learn more »

Do not use offset for pagination

Learn why

Visit my sibling!A lot changed since SQL-92!

The Use The Index, Luke! mug

Stickers, coasters, books and coffee mugs. All you need for learning.

Shop now

Connect with Markus Winand

Markus Winand on LinkedInMarkus Winand on XINGMarkus Winand on Twitter
“Use The Index, Luke!” by Markus Winand is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License.
Legal | Contact | NO WARRANTY | Trademarks | Privacy and GDPR | CC-BY-NC-ND 3.0 license