Hacker News new | ask | show | jobs
SQL: Select only rows with Max Value on a Column (stackoverflow.com)
6 points by adrianonantua 4550 days ago
2 comments

Or those who happen to be using a dialect of sql with window functions, selecting the rows where:

ROW_NUMBER() OVER(PARTITION BY Id ORDER BY Rev DESC) AS "Row Number"

Returns 1 is clearer to my mind, with some caveats around dialects which use separate forms of row-number that assign identical/differing numbers to two consecutive identical rows.

I prefer SELECT table.* FROM table WHERE rev = (SELECT MAX(rev) FROM table WHERE id=table.id)

I hate joins. Subselects are so much clearer imo - and you don't end up with extra fields.