Vinzenz Mai: UNION, GROUP BY und MAX

Beitrag lesen

Hallo

das ist keine gute Idee.
Mhmm versteh ich zwar nicht aber okay.
Mhmm naja, fand meine Erklärung eigentlich recht schlüssig.. aber hier dann nun mal mit Daten ..

Du vielleicht. Du weißt, was Du haben möchtest. Du kennst Deine Ausgangsdaten.
Der geneigte Helfer jedoch nicht, wenn er nicht im Besitz einer funktionierenden
Glaskugel ist.

Tabelle A:
id     |   datum
1      |   100
2      |   150
3      |   200
4      |   250
5      |   300
6      |   350

Tabelle B:
id     |   a_id    |  datum
1      |    2      |  180
2      |    2      |  150

Tabelle C:
id     |   a_id    |  datum
1      |    1      |  90
2      |    3      |  600

Tabelle D:
id     |   a_id    |  datum
1      |    5      |  900
2      |    2      |  150

id     |  datum
5      |  900
3      |  600
6      |  350
4      |  250
2      |  180
1      |  100

Mein jetziges Query liefert jedoch folgendes (die a_id's kommen Mehrfach vor ...)

id     |  datum
5      |  900
3      |  600
6      |  350
5      |  300   <- doppelt
4      |  250
3      |  200   <- doppelt
2      |  180
2      |  150   <- doppelt
2      |  150   <- doppelt
2      |  150   <- doppelt
1      |  100
1      |  90

aha, Du möchtest also nur die "neuesten" Werte zu jeder id haben. Ein ganz
neuer Aspekt, der in Deinem Ausgangsposting nicht enthalten ist. Das kannst
Du ganz einfach mit einer GROUP-BY-Klausel und der entsprechenden
Aggregatsfunktion lösen.

Freundliche Grüße

Vinzenz