Supportnet / Forum / Datenbanken
Rangfolge der Teilnehmer eines Sportereignisses mit 3 Disziplinen mit MS Access 2000 erstellen
Frage
Es gibt 2 Ergebnistabellen: T1 und T2 und eine Tabelle T0 mit Angaben über die Teilnehmer.
Alle 3 Tabellen sind über eine eindeutige und nur einmal pro Teilnehmer vergebene Startnummer (Stnr) verbunden.
In T1 sind Startnummer und jeweil 2 Ergebnisse als Zeiten enthalten (Format: Zeit, lang = hh:mm:ss) und in T2 sind Startnummer und jeweils 5 verschiedene Punktwerte pro Startnummer enthalten (Format: Zahl einfach, ohne Nachkommastelle) z.B.
Stnr Pkt1 Pkt2 Pkt3 Pkt4 Pkt5
001 8 9 10 3 4
Die Auswertung (Abfrage) soll 1. die Rangfolge nach der ersten Zeit; 2. die Rangfolge nach der 2. Zeit und 3. die Rangfolge nach der jeweiligen Punktsumme aus den 5 Punktewerten ergeben.
Bei gleichen Werten soll das Ergebnis beispielsweise so aussehen:
Rang 1, 2, 3, 3, 3,6,7, etc.
Mein Versuch mit
Rang: (Select Count (*) from T1 Where [Zeit1] < [T1A].[Zeit1]+1;) ergab leider nicht das gewünschte Resultat. Statt einer Rangfolge wurde z.B. für 39 Startnummern der Rang 39 für jede Startnummer ausgegeben.
Ich bin für jeden Hinweis dankbar, der mir weiterhilft.
Antwort 1 von Gudrun11
Hallo,
über eine Bericht könntest Du es z.B. lösen.
Z.B. eine Abfrage Mit Tabelle T0 und Tabelle T1.
Dann kannst Du eine Bericht machen wo die Rangfolge nach Zeit 1 dargestellt wird.
Du gruppierst nach Zeit1 - d.h. die Teilnehmer mit gleiche Zeiten werden zusammengefasst.
Dann legst Du ein ungebundenes Feld an wo =1 darinsteht. Bei den Eigenschaften-Daten für dieses Feld Laufende Summe : Über Gruppe einstellen, das ist dann der Rang.
Für die anderen Auswertungen könnten dann ähnliche Berichte entstehen.
Viele Grüße
Gudrun
über eine Bericht könntest Du es z.B. lösen.
Z.B. eine Abfrage Mit Tabelle T0 und Tabelle T1.
Dann kannst Du eine Bericht machen wo die Rangfolge nach Zeit 1 dargestellt wird.
Du gruppierst nach Zeit1 - d.h. die Teilnehmer mit gleiche Zeiten werden zusammengefasst.
Dann legst Du ein ungebundenes Feld an wo =1 darinsteht. Bei den Eigenschaften-Daten für dieses Feld Laufende Summe : Über Gruppe einstellen, das ist dann der Rang.
Für die anderen Auswertungen könnten dann ähnliche Berichte entstehen.
Viele Grüße
Gudrun
Antwort 2 von P_K
Hallo Gudrun,
danke für Deinen Tipp.
Leider löst er mein Problem nicht so ganz..
Mit dem ungebundeneb Feld mit =1 wird jeweils um eine Position weitergezählt - leider auch dann, wenn es z.B. 3x die Position 5 oder, allgemein mehrfach die gleiche Zeit und Punktzahl gibt.
Trotzdem noch einmal ein Dankeschön für Deine Hilfe.
Gruß
Peter
danke für Deinen Tipp.
Leider löst er mein Problem nicht so ganz..
Mit dem ungebundeneb Feld mit =1 wird jeweils um eine Position weitergezählt - leider auch dann, wenn es z.B. 3x die Position 5 oder, allgemein mehrfach die gleiche Zeit und Punktzahl gibt.
Trotzdem noch einmal ein Dankeschön für Deine Hilfe.
Gruß
Peter
Antwort 3 von Gudrun11
Hallo,
das Ungebundene Feld muß natürlich im Gruppenkopf stehen. Wenn die Auswertungen einzeln sind und nicht die Zeit und die Punkte ausgewertet werden müßte es gehen.
Naja , schönes Weiterarbeiten
Gruß
Gudrun
das Ungebundene Feld muß natürlich im Gruppenkopf stehen. Wenn die Auswertungen einzeln sind und nicht die Zeit und die Punkte ausgewertet werden müßte es gehen.
Naja , schönes Weiterarbeiten
Gruß
Gudrun
Antwort 4 von P_K
Danke für die weitere Hilfe.
Leider ändert sich am Ergebnis nichts, egal ob ich das "=1"-Feld im Gruppenkopf oder im Detailbereich erstelle. Es wird weiterhin jeder Wert im Rang um +1 höher gezählt, auch wenn die zugrunde liegenden Ergebnisse identisch sind. Dabei ist es egal, ob es sich um die Zeitergebnisse oder um Punkte handelt.
Bei gleichen Werten (aber unterschiedlichen Startnummern) kommt dann z.B. statt 1, 2, 3, 3, 3, 4 etc. als Ergebnis 1, 2, 3, 4, 5, 6, etc. heraus.
Also leider kein brauchbares Ranking.
Trotzdem noch einmal ein Dankeschön für Deine Hilfe.
Gruß
Peter
Leider ändert sich am Ergebnis nichts, egal ob ich das "=1"-Feld im Gruppenkopf oder im Detailbereich erstelle. Es wird weiterhin jeder Wert im Rang um +1 höher gezählt, auch wenn die zugrunde liegenden Ergebnisse identisch sind. Dabei ist es egal, ob es sich um die Zeitergebnisse oder um Punkte handelt.
Bei gleichen Werten (aber unterschiedlichen Startnummern) kommt dann z.B. statt 1, 2, 3, 3, 3, 4 etc. als Ergebnis 1, 2, 3, 4, 5, 6, etc. heraus.
Also leider kein brauchbares Ranking.
Trotzdem noch einmal ein Dankeschön für Deine Hilfe.
Gruß
Peter
Antwort 5 von P_K
Nach langem Herumprobieren sieht meine Abfrage für die Rangfolge jetzt so aus:
Rangfolge: (Select Count (*) FROM [T1] as [X] WHERE [X].[Zeit1] < [T1 A].[Zeit1];)+1
Mit dem damit erzielten Ergebnis kann ich leben.
Gruß an alle Interessierten
Peter
Rangfolge: (Select Count (*) FROM [T1] as [X] WHERE [X].[Zeit1] < [T1 A].[Zeit1];)+1
Mit dem damit erzielten Ergebnis kann ich leben.
Gruß an alle Interessierten
Peter