• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Min() & MAX() mit unerwarteten Ergebnissen

Degers

Mitglied
Hallo,

Kurz zur Situation: Es gibt Kommentare zu Vokabeln. Davon sollen die letzten paar ausgegeben werden, mitsamt der Vokabel. Wenn mehrere Kommentare vorhanden sind, soll die Anzahl der Kommentare zur Vokabel angegeben werden und der aktuellste Kommentar zur Vokabel ausgegeben werden. Wenn nur ein Kommentar da ist, soll eben dieser eine ausgegeben werden.
Das funktioniert auch ganz gut. In einige Fällen irritierenderweise nicht. Je nachdem, ob ich max() oder min() zur Ermittlung des aktuellsten Kommentars nehme, wird bei manchen Vokabeln die aktuellste angezeigt, manchmal irgendwo in der Mitte oder die Älteste.

Das Statement:
Code:
SELECT vc_link, foreignLanguage, voc_defgroups, lex_cat,
       COUNT(vc_link) AS number, MIN(vc_comment) AS comment
FROM vocabulary_comments
LEFT JOIN vocabulary ON vc_link = voc_id
GROUP BY vc_link
ORDER BY vc_timestamp DESC       
LIMIT 5

Die Struktur der Kommentardatenbank:
Code:
 vc_link | vc_loglink | vc_user | vc_timestamp | vc_comment

Hat jemand eine Idee, warum max und min nicht wie erwartet arbeiten oder wo mein Verständnisfehler liegt?
 
Werbung:
Zurück
Oben