Subject | Re: [firebird-support] please help with group by and subselect |
---|---|
Author | Helen Borrie |
Post date | 2003-09-18T10:35:31Z |
At 12:18 PM 18/09/2003 +0200, you wrote:
date-only and there's a possibility of multiple quotes per day, then
there's no way (among the given data) to find out which is the most recent.
Select distinct doesn't change anything, since it will return the first row
of the subset that meets the criteria...possibly the earliest (and thus not
the one you want) but you would have no way to know for certain.
h.
>Helen Borrie wrote:This will get the most recent if last_quote_date is a timestamp. If it's a
> > Will this do?
> >
> > select
> > a.supplier,
> > a.last_quoted_price,
> > a.last_quote_date
> > from pricelist a
> > where a.last_quote_date = (
> > select max(b.last_quote_date) from pricelist b
> > where b.supplier = a.supplier
> > and b.product = a.product)
> > where a.product = :product
>
>If he has more than one record for same quote_date/suplier/product, he
>will get all of those. Perhaps to add "distinct" after select?
date-only and there's a possibility of multiple quotes per day, then
there's no way (among the given data) to find out which is the most recent.
Select distinct doesn't change anything, since it will return the first row
of the subset that meets the criteria...possibly the earliest (and thus not
the one you want) but you would have no way to know for certain.
h.