Hacker News new | ask | show | jobs
by seanhunter 1119 days ago
> - Subqueries in the FROM clause can omit aliases

This is great. It never made any sense to me that this was required. For people who are unaware, say you want to understand a table a natural way of doing it might be

    select * 
    from the_table
    order by some_metric desc 
    limit 10
so you'd think you can do the same for queries like

    select * 
    from (
      select blah blah blah the rest of the query
    ) a
    order by some_metric desc 
    limit 10
you need to put the alias 'a' to placate existing postgres even though it's never actually used, which never made any sense to me.
2 comments

It makes sense in that every table needs a name to reference, however if you only have the one table there isn't any ambiguity.
It never made sense.

And FYI this comes from ANSI SQL.

It does the second you want to join to the results of that subquery...this is an optimization that recognizes that the alias is never used and thus can be omitted. Nice QOL feature.