Comparing performance of both approaches (“University” vs. distinct on) is an interesting comparison. I do believe that results may vary for each specific use case. It’s possible you got better perf using the “Universty” approach because of indexes you have on the table (?).
I actually wrote about *another* approach to fetching the last version of a row using an “array trick”. Feel free to check it out as well.