In his Nine Reasons Developers Should Learn SQL piece from a couple of years back, Jeremiah Peschka highlighted why SQL is such as great standard.
For those that need a refresher, SQL (Structured Query Language) is probably best described as an interactive programming language for getting information to and from a database.
Before we look to the point of developer insight here, let us also remind ourselves that many database products support SQL with proprietary extensions to the standard SQL language.
So how can SQL as a route to database management help applications work faster?
Peschka reminds us that, in this day and age, there are "only a few places" to implement performance gains in an application:
• the presentation layer,
• the application layer and,
• the storage layer.
So then, why is SQL database knowledge so important for developers?
... and why should developers learn SQL as a route to greater performance gains in their application?
"Let's face it, your code is already well written and well tuned; getting any performance gains there is going to be like getting blood from a stone. The database, on the other hand, is an easy place to make a few simple changes (add an index, change a query slightly) and see tremendous performance improvements," writes Peschka.
He continues, "Having spent a considerable portion of my career as an application developer staring at a profiler, I can attest to this. It's possible to pry performance improvements out of application code, but modern frameworks and toolkits are typically so well-written that the database is usually a better place (read as easier place) to find low hanging fruit for performance improvements."
You can read Peschka's whole piece at the link above to gain wider insight on SQL for developers.