4 ms·
SQL: Select only rows with Max Value on a Column
- goldenkey 13y agoI 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.
- baxter001 13y agoOr 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.