Har en tabell i sql server med tävlingsresultat (resultat) och har kört fast i beräkning av cuppoäng.
Man kan vinna 3 cupper och varje cupp är beräknad på vilken grupp man deltagit i, och i vilken klass man fick poäng i.
I detta fall ska man ha deltagit i grupp "a" (fins a, b, c)
Man ska även ha fått poäng i någon av klasserna MC, MP1, MP4, MPV, MPO, MS1, MS2
I kolumnen "grupp" finns det bara värdet a, b eller, c
I kolumnen "klass" finns det ett 20 tal olika förkortningar, bland annat MC, MP1, MP4, MPV, MPO, MS1, MS2
I kolumnen "poäng" kan talet vara från 0 till 12
Jag vill alltså att den som har högst poäng efter grupp och klass kriterierna ska visa längst upp och sedan fallande ordning allt grupperat efter namn.
Men jag får inte select satsen nedan att stämma
Har en person som vunnit 3 tävlingar (ska då få 36 poäng) i gruppen a. Två i klassen MP1 och en i klassen MS1
Men jag får resultatet att personen visas två ggr, en med 24 poäng och en med 12 poäng
Vad gör jag för fel?
SELECT sum(Poäng) As Points, klass, grupp, namn
FROM resultat
Where grupp = 'a'
And klass in ('MC', 'MP1', 'MP4', 'MPV', 'MPO', 'MS1', 'MS2')
Group By namn, klass, grupp
Order By Points DESC