Hacker News new | ask | show | jobs
by tejtm 1641 days ago
Following the granularity gradient

FROM .. JOIN .. WHERE .. SELECT

tables -> columns -> rows -> filter

I think they knew that but decided they wanted DBAs to think about what they wanted to end up with before they began writing code, so they moved the last step to the first step. I can get behind that from a pedagogical perspective.

However today, relational databases are far too ubiquitous to always get the level of serious thought and considerations they were once afforded, and are regularly being used by (perish the thought) non-DBAs.

At this point it is muscle memory to start with:

   select count(*)
     from ..
     join .. on ..
 
then comment out the `--count(*)` and build up the output after the body works because I may not know what is available to select before isolating it.
1 comments

Those were the times where "natural language like" was considered good and useful for use by non experts. It's one of the reasons why the sql syntax is so complex and, I believe, the reason why IBM did go with that order