Jeg vil gerne konstruere en SQL-sætning som først løber alle kampe igennem og finder den eller de spillere som sammenlagt har scoret flest mål. Dernæst skal spillertabellen opdateres, således at topscoreren/topscorerne får nogle point ind på SamletScore (lad os sige 100)
Jeg hælder en del til at benytte SUM til at finde den sammenlagte score for de forskellige spillere, men jeg får en fejlmeddelelse ang. noget "GROUP BY"?
Skal det at finde topscorerne og det at opdater spillertabellen evt. splittes op i 2 selvstændige sætninger?
Ønsker du at finde den spiller der har scoret flest må i hver kamp så kan det gøres således: A1 - "SELECT MAX(Scoringer) AS MaxScoringer, KampNr FROM Scoringer GROUP BY KampNr" Hvilket returnere hvilke kampe der er er scoret hvormange mål af den der har scoret flest mål. A2 - "SELECT SpillerID FROM TBL Scoringer WHERE KampNr = 1 (Her skal kampNummeret stå) AND Scoringer = 2 (Her skal MaxScoringer stå)" Hvilket returnere alle de spillere der har scoret det pågældende antal mål.
Det er ikke den enkelte rundes topscorer jeg er ude efter. Det jeg forsæger at finde er den sammenlagte topscorer. Dvs. at jeg ønsker kun at finde den eller de spillere der har MAX-værdien når alle runders kampe er lagt sammen. Hvor mange kasser de har lavet er i denne sammenhæng ligegyldigt.
Ja, den er nok ikke så nødvendig .. Tænkte bare på at joine med den ... Du kan også lave føglende forespørgsel som vil returner alle kampe samt de spillere der har scoret flest mål og hvormange mål:
"SELECT Scoringer.KampNr, Scoringer.SpillerID, Scoringer.Scoringer FROM (SELECT MAX(Scoringer) AS MaxScoringer, KampNr AS ThisKampNr FROM Scoringer GROUP BY KampNr) d, Scoringer WHERE Scoringer.Scoringer = d.MaxScoringer AND Scoringer.KampNr = d.ThisKampNr ORDER BY Scoringer.KampNr, Scoringer.SpillerID"
Det er vist hvad man kalder for en motherfu.... af en sql-sætning :o) Men jeg tror nu vi er inde på noget af det rigtige.... Er dog lidt i tvivl om hvad du mener med KampNR og ThisKampNR - er det muligt i sql at benytte this? Eller er det i programmeringssproget "udenom" jeg skal finde this? - benytter asp
hvis du anvender den sidste select jeg viste dig så virker det udenom programmeringssprogrameringssproget. Prøv evt. at køre forespørgslen. Hvis du anvender A2 så skal KampNr og Scoringer sættes ind via programmeringssproget.
Tak skal i have. Jeg har ikke fulgt nogen af Jeres forslag slavisk, men I har skubbet mig i den rigtige retning :o)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.