Stefan: mysql5 - Vorgehensweise gesucht

Beitrag lesen

Hi encoder,

danke für Deine Antwort. Das waren genau die Denkanstöße, die ich brauchte.

Hast du ein WHERE mit dem die die Anzahl der in Frage kommenden Rechnungen schon sinnvoll begrenzt wird?

Ja, das natürlich ohnehin.

Dann ist das hinzujoinen der Mahnungen wahrscheinlich schon nicht mehr so kritisch.

Korrekt.

Sind die Mahnungen immer in einer bestimmten Reihenfolge? Dann würde ich ein GROUP BY Rechnung machen und mit einem MAX(Mahnungsrelevanz) die letzte Mahnung zur Rechnung ausgeben. Daran weißt du dann welche Mahnungen die Rechnung schon erhalten hat und kannst das anzeigen.

Das war der entscheidende Hinweis.

Was ich nicht verstehe

bei vorhandener Rechnungsnummer
Du willst hoffentlich nicht für jede Rechnung separat alle Mahnungen suchen?

Wäre jetzt auch nicht so dramatisch gewesen (s.o. LIMIT), aber natürlich integriere ich den JOIN (bzw. LEFT JOIN) in die bereits vorhandene "Hauptquery).

Was  noch ein bißchen unklar bei mir ist, ist beim vorhandenen JOIN

  
...  
ADDDATE(r.Rechnung_datum , INTERVAL r.Faelligkeitstage DAY),  
m.Mahnstatus,  
ADDDATE(m.Mahn_datum, INTERVAL m.Faelligkeitstage DAY)  
...  

lediglich den höchsten Mahnstatus UND das hierzu gehörende Mahndatum+Fälligkeit zu erhalten.

Über das Einbinden von MAX(m.Mahnstatus) in die WHERE-Klausel erhalte ich einen Fehler #1111 - Invalid use of group function.

Gruß, Stefan