Re: select best price
От | Bruno Wolff III |
---|---|
Тема | Re: select best price |
Дата | |
Msg-id | 20051026184002.GI11447@wolff.to обсуждение исходный текст |
Ответ на | Re: select best price (Gary Stainburn <gary.stainburn@ringways.co.uk>) |
Список | pgsql-sql |
On Wed, Oct 26, 2005 at 16:38:48 +0100, Gary Stainburn <gary.stainburn@ringways.co.uk> wrote: > On Wednesday 26 October 2005 4:21 pm, Gary Stainburn wrote: > > Hi folks > > > > I've got a table holding item code(cs_id), supplier a/c (co_id) , and > > price (cs_price). > > > > How can I select the rows containing the lowest price for each item > > code? > > > > I've tried various forms of min() etc and know it must be simple but > > I'm stumped. > > > > Gary > > I've come up with the select below. Is there a better/more efficient > way of doing this? > > select cp.cs_id, from cons_price_details cp, > (select cs_id, min(cs_price) as cs_price > from cons_price_details > group by cs_id > ) v > where cp.cs_id = v.cs_id and cp.cs_price = v.cs_price; If you only need one lowest price entry where there are ties, you could also use DISTINCT ON (a nonstandard Postgres extension) and ORDER BY that may execute faster.
В списке pgsql-sql по дате отправления: