Hacker News new | ask | show | jobs
by evanelias 2424 days ago
> crap SQL that MySQL taught you

This seems like an unfair characterization. You're blaming MySQL for "teaching you" nonstandard practices just because it allowed you to use them, but where did you actually learn these practices originally?

Although strict mode only became the default 4 years ago, it's been available as an option for over 15 years, and is mentioned in numerous places in the MySQL manual -- including a dedicated page on the strict-mode implications on GROUP BY and aggregation.

Anyway, I don't see how the need to rewrite some poorly-written legacy queries makes modern versions of MySQL "irrelevant". Seems ironic given the topic of GP complaining about MySQL's extreme commitment to backwards compatibility. If you don't like MySQL for personal historical reasons, that's fine, but this hardly seems like a solid argument for discouraging others from using it.

2 comments

You are right, I totally should have specified that this was a personal anecdote and it's specific to my experience and not a generalization:

I learned SQL within MySQL 5.4-5.6, strict mode was never enabled by default (on any install of mysql i've ever done for 5.4-5.6), so hopefully one can see how that sets someone up who is learning on the fly for long term failure (you are literally free of many constraints that exist in every other db engine).

I didn't learn how to write strict SQL from the ISO guide, I learned based on what mysql would "let me do" in order to produce the desired result. So indeed that is where I went wrong.

Indeed. Things change. Backward compatibility is difficult, and doing it with the minimum possible headaches involves many trade-offs. A lot of things will look "stupid" in hindsight.