Re: Best way to get the latest revision from a table

Поиск
Список
Период
Сортировка
Искать
От
Tom Lane
Тема
Re: Best way to get the latest revision from a table
Дата
Msg-id
14113.1295048443@sss.pgh.pa.us
Ответ на
Список
Дерево обсуждения
Best way to get the latest revision from a table Nikolas Everett <nik9000@gmail.com>
Re: Best way to get the latest revision from a table "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: Best way to get the latest revision from a table Nikolas Everett <nik9000@gmail.com>
Re: Best way to get the latest revision from a table "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: Best way to get the latest revision from a table Shaun Thomas <sthomas@peak6.com>
Re: Best way to get the latest revision from a table "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: Best way to get the latest revision from a table Tom Lane <tgl@sss.pgh.pa.us>
Re: Best way to get the latest revision from a table "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: Best way to get the latest revision from a table Nikolas Everett <nik9000@gmail.com>
Re: Best way to get the latest revision from a table Robert Haas <robertmhaas@gmail.com>
Re: Best way to get the latest revision from a table Nikolas Everett <nik9000@gmail.com>
Re: Best way to get the latest revision from a table Shaun Thomas <sthomas@peak6.com>
Re: Best way to get the latest revision from a table Shaun Thomas <sthomas@peak6.com>
"Kevin Grittner"  writes:
> Shaun Thomas  wrote:
>> This actually looks like a perfect candidate for DISTINCT ON.
>> 
>> SELECT DISTINCT ON (a, b) a, b, revision
>> FROM test
>> ORDER BY a, b DESC;
 
> I wouldn't say perfect.  It runs about eight times slower than what
> I suggested and returns a fairly random value for revision instead
> of the max(revision).

Shaun's example is a bit off: normally, when using DISTINCT ON, you want
an ORDER BY key that uses all the given DISTINCT keys and then some
more.  To get the max revision for each a/b combination it ought to be

SELECT DISTINCT ON (a, b) a, b, revision
   FROM test
   ORDER BY a, b, revision DESC;

As for speed, either one might be faster in a particular situation.

			regards, tom lane
В списке pgsql-performance по дате отправления
От: Kevin Grittner
Дата:
От: Kevin Grittner
Дата:
FAQ