Jörg: Query mysql

Beitrag lesen

Hallo Rolf,

Deine aktuell gezeigte Query ist sinnlos, denn die zeigt alle Kunden, die irgendwelche Aufträge haben. Ohne die Auftragsdaten dazu. D.h. es wird sicherlich eine Bedingung geben, die Aufträge filtert. Und nur zu den gefundenen Aufträgen willst Du Kundendaten sehen.

Schon klar.
Die Bedingung habe ich der Einfachheit halber mal weggelassen.

  • Warum ist da ein DISTINCT drin? Wenn der nötig ist, kann das auf eine suboptimale Query hinweisen.

Weil ich derzeit aus der Auftragtabelle nur die KundenID ziehe und die will ich genau 1 x haben, egal wieviele Aufträge der bedingung entsprechen.

  • Soll das Query-Ergebnis auch Werte aus der Auftragstabelle enthalten?

Muss eigentlich nicht, es ist mehr eine Aufgabe, die ich mir selber zum lernen gerade stelle.

Doch doch, das geht schon, du kannst 3 Aufträge zeigen und bei jedem das jüngste Datum. Aber muss das?

  • Mal angenommen, deine Auftragstabelle hat zum Kunden 12 die Aufträge 42, 97 und 119. Deine Filterbedingung findet die Aufträge 42 und 97, woraufhin Du den Kunden 12 als Queryergebnis bekommst. Aber welches maximale Auftragsdatum willst Du sehen? Vom #97? Oder vom #119?

Das jüngste.
Ich will einfach ausgeben, wann der letzte auftragliche Kontakt zum Kunden bestand. Das wird im Übrigen keinen Vorgang betraffen, der nicht ohnehin in der Ergebnissmenge enthalten its, wiel die Bediungung sich auf einen Zeitraum beziehen wird, innerhalkb derer die Aufträge sind. (z.b. nur letztes Jahr)

Jörg