Klaus Mock: zusätzliche Daten bei GROUP BY abfragen

Beitrag lesen

Hallo,

SELECT ID, MAX(preis)
    FROM produkte
    GROUP BY warengruppe

Das ist an sich kein gültiges SQL-Statement, da es nicht eindeutig ist. Das funktioniert nur in kaputten Datenbanken.

Was passiert wenn der Datenbestand genau so aussieht:

ID     PREIS
1      100
2      100
3      200
4      200

Eine mögliche Lösungsvariante ist:

SELECT id, preis
  FROM tabelle
WHERE preis = (SELECT MAX(preis) FROM tabelle)

Allerdings muss dazu das Datenbanksystem auch Sub-Queries verstehen.

Grüße
  Klaus