4 ms·
SQL seems to be evolving by tacking on features willy-nilly, with no clear holistic philosophy, and worse, the standards which emerged aren't followed by all ma
by weberc2 9y ago
SQL seems to be evolving by tacking on features willy-nilly, with no clear holistic philosophy, and worse, the standards which emerged aren't followed by all major implementations and even standards which are followed differ starkly in terms of performance across implementations. The product is that we all write implementation-specific SQL, which largely defeats the purpose of a standard language altogether.
I think if someone came along and fixed these major issues and gave it a modern syntax without significantly degrading performance, it would be sufficiently different that the XKCD "competing standards" meme would not apply.
I would love to hear from someone with database specialization.
- greymeister 9y agoBrowsing the featured added by SQL standards on Wikipedia: SQL:2003 added XML functions SQL:2006 more XML! SQL:2008 XQuery! SQL:2016 JSON! My guess it's not so much "willy-nilly" but more a sign of "what was popular."
- keketi 9y agoCalling it now: in 2020 they will add YAML support.
- FranOntanaya 9y agoWASM for SQL
- zbentley 9y agoDefinitely blockchain.
- astrodust 9y agoHopefully one day GIS functions and types get standardized.
- weberc2 9y agoThis is pretty much what I mean by "willy-nilly". Little concern seems to be paid to how well it integrates into some holistic information access theory or paradigm. I would expect some adherence to relational algebra, and if that isn't sufficiently powerful, I would like a transition to some more powerful theory rather than welding on the new hotness. I'm not saying I could do it better, mind you.
- numbsafari 9y agoA reasonable critique, in part, but you are missing some important stuff: SQL:2003 added Window Functions, standardized sequences, and columns with auto-generated values SQL:2006 okay, this one sounds like it was mostly about XML, but a lot of the functionality that went into dealing with structured content is what made the JSON support workable. SQL:2008 this gave us the MERGE version of upsert, instead of triggers (which apply to views, and are a powerful way to deal with backwards compatibility) SQL:2016 LISTAGG (super powerful), Row Pattern Recognition (a lot more intuitive that comparable uses of WINDOW functions), standardized date/time parsing, and polymorphic table functions (which you can kinda see in, for example, BigQuery's legacy table wildcard functions)
- MarkusWinand 9y agoThe adoption of standard SQL is really poor on many SQL products. I mentioned that in the article: > I believe the main reasons are a lack of knowledge and interest among developers along with poor support for modern SQL in database products. However, it IS getting better at the moment. Have you seen the "New SQL" systems that implement window functions? MySQL is finally adding those features and MariaDB picks other features from the standard. There is movement. I'll just keep on making my comparison matrices to make the differences visible. This will (hopefully) increase developers interest, which is basically a market demand. Vendors listen to market demand. evil grin