Ilja: Mehrstufige Gruppierung

Beitrag lesen

yo,

Ich dachte man sollte bei Gruppierungen das HAVING benutzen weil das WHERE das Ergebnis der Gruppierung zu dem Zeitpunkt ja nicht kennt (meine ich mal irgendwo gehört zu haben, lasse mich da aber gerne belehren)

wenn sich die selektion aber erst gar nicht auf die gruppierungen bezieht, sondern ganz unabhängig davon datensätze selektiert, dann gehört es immer noch in die WHERE klausel. würde ja auch keinen sinn machen, erst datensätze mit in das result-set reinnehmen und dann mit HAVING wieder ausschließen. anders sieht es zum beispiel bei den aggregat-funktionen aus. diese beziehen sich auf die jeweiligen gruppierungen, zum beispiel zeige mit alle gruppierungen an mit einer anzahl von datensätze größer 10 an (HAVING count(*) > 10).

trifft aber in diesem Anwendungsfall nicht zu, weil bei den Doppelspielern der auf dem Mannschaftsmeldeformular höher aufgestellte Spieler (der nominell stärkere) immer als erstes genannt wird, und die Doppel nur in dieser Reihenfolge angegeben werden.

ist eine schwachstelle, weil du dich darauf verlasen musst. wenn es geht, würde ich mich von seiten der datenbank (abfrage) davon unabhängig machen.

Ilja