Nico R.: Danke! Vereinfachte Abfrage funktioniert.

Beitrag lesen

Hallo Rolf,

vielen Dank erstmal für deine Hilfe. Ich hatte das Thema gestern abend quasi schon ad acta gelegt und mich mit meinem Riesen-Query abgefunden (Wer sonst hat sowas schon?). Deine Abfrage ist natürlich wesentlich eleganter. (Das Ergebnis aber dafür einen Ticken redundanter 😜)

  • Das Datenmodell gibt her, dass ein Spieler am Spieltag 1 in der Oberliga spielt und am Spieltag 2 in der Kreisliga (z.B. Ausleihe). Bist Du auf diesen Fall vorbereitet? Du bekommst dann nämlich für eine Saison mehrere Zeilen aus der Query.

Es wird pro Jahr nur eine Saison angelegt. Ein Spieler ist über saison_spieler entweder Teil des Kaders dieser einen Saison oder nicht. Das Modell hast du übrigens 1A hergeleitet.

  • Für einen gegebenen Spieler besteht zwischen Saison und Saison_Spieler eine 1:1 Beziehung. Das suggeriert, dass ein Spieler während einer Saison in allen Wettbewerben mit der gleichen Nummer und auf der gleichen Position spielt. Ist das korrekt?

Ja, genau. Die Position (Tor, Abwehr, Mittelfeld, Angriff) ist quasi ein Planwert pro Saison. Im Grunde ist es nicht unüblich, dass ein Angreifer in einem Spiel auch in der Abwehr eingesetzt wird. Das ist aber nicht wichtig und wird auch nicht erfasst.

  • Dein Screenshot gibt Spielernummer und -position nicht aus. Das heißt für mich, dass Du die Saison_Spieler-Tabelle gar nicht in der Query brauchst. Wieso hast Du Nr und Pos in der Query drin?

Doch doch, die Position wurde mit angezeigt (inzwischen nicht mehr). Die, als auch die Nr. fliegen auch aus der Query. Ich habe deine Abfrage nochmal leicht angepasst, es hatten sich zwei Fehler eingeschlichen:

Zeile 2: (Saison_Spieler_Pos statt Saison_Spieler.Pos

Zeile 22: ON Stat.Saison_ID = Saison.ID nach (SELECT ...) stat

Sie funktioniert nun und liefert genau das, was ich brauche:

Dass manche leere Felder mit NULL gefüllt sind und andere mit 0, resultiert aus Unkenntnis beim Erstellen der Tabellen vor etlichen Jahren. Damals war mir der Unterschied nicht recht bewusst. Nun ists so und ich möchte ungerne daran herumrühren.

Als nächstes kommt jetzt die Gruppenverarbeitung der Daten. Sollte ich dabei auf Probleme stoßen, werd ich mich melden 😉

Einstweilen vielen Dank und einen schönen Abend

Nico