Gesucht: Preis zu aktuellstem Datum

Gesucht: Preis zu aktuellstem Datum

am 03.10.2007 09:04:51 von usenet

Hallo,
ich habe zwei Tabellen. In der einen sind Produkte abgelegt, in der anderen
Preis zu den Produkten. Dabei ist es so, dass sich in der Preistabelle zu
jedem Produkt der aktuelle und die alten Preise befinden.


produktID | produkt
----------+---------+
1 | Milch
2 | Kaffee



ID | preis | produktID | datum
---------+-------+------------+----------
1 | 0.55 | 1 | 2007-06-11
2 | 0.66 | 1 | 2007-09-04
3 | 3.29 | 2 | 2007-07-28
4 | 2.99 | 2 | 2007-09-26


Gesucht: Der aktuelle Preis der Produkte. Also:

produktID | produkt | preis | datum
----------+---------+-------+-------------
1 | Milch | 0.66 | 2007-09-04
2 | Kaffee | 2.99 | 2007-09-26

Mein Ansatz:

SELECT P.produktID , P.produkt, PR.preis , MAX(PR.datum)
FROM preis_produkt P , preis_preise PR
WHERE PR.produktID =P.produktID
GROUP BY P.ID
ORDER BY P.produkt

Leider liefert das Ergebnis nicht den zum Datum zugehörigen Preis. Wäre für
einen Tipp dankbar

Gruß
Matthias


--
ALDI-Archiv: wann gibt es wieder ... bei ALDI?
ALDI-Drehrichtung: ein dafa-"Forschungsprojekt"
ALDI-Preislisten, Linksammlung, Newsletter,...
http://www.koever.com/aldi/

Re: Gesucht: Preis zu aktuellstem Datum

am 03.10.2007 09:25:22 von Andreas Kretschmer

Andreas
--
q: why do so many people take an instant dislike to mysql?
a: it saves time (oicu in #postgresql)
Explaining the concept of referential integrity to a mysql user is like
explaining condoms to a catholic (Shadda in #postgresql)

Re: Gesucht: Preis zu aktuellstem Datum

am 03.10.2007 11:08:21 von usenet

Am Wed, 3 Oct 2007 09:25:22 +0200 schrieb Andreas Kretschmer:


> Wie wäre es, einfach mal die Postings der letzten Woche zu überfliegen?

Das habe ich natürlich gemacht, stehe aber leider trotzdem auf dem Schauch.
Du schlägst dort folgende Lösung vor
"select artikel, preis from preis where (artikel,datum) in (select artikel,
max(datum) from preis group by artikel);"

Wenn ich das auf mein Problem übertrage, dann bedeutet das für den _zweiten
Teil_ doch:

select preis, max(datum) FROM preis_preise group by produktID

Ich habe zwar dann das aktuellste Datum und irgendeinen Preis, aber nicht
zwingend den der zum Datum gehört.
Es sind meine ersten Geversuche mit Subqueries - ich tue mich etwas schwer.

Gruß
Matthias


--
ALDI-Archiv: wann gibt es wieder ... bei ALDI?
ALDI-Drehrichtung: ein dafa-"Forschungsprojekt"
ALDI-Preislisten, Linksammlung, Newsletter,...
http://www.koever.com/aldi/

Re: Gesucht: Preis zu aktuellstem Datum

am 03.10.2007 11:55:55 von Andreas Kretschmer

Andreas
--
q: why do so many people take an instant dislike to mysql?
a: it saves time (oicu in #postgresql)
Explaining the concept of referential integrity to a mysql user is like
explaining condoms to a catholic (Shadda in #postgresql)