Jag har en asp.net applikation, varav jag i en rullmeny först väljer Continent och sedan kan välja olika cupper.
Resultatet presenteras i en asp:GridView.
Nedan hur sql satsen ser ut nu.
Tävlingar som får räknas in i cuppen måste ha genomförts (date_event) i aktuell tävlingssäsong (date_event BETWEEN '" & startdate & "' And '" & enddate & "').
Den som leder/vinner cuppen baseras på hur många tävlingar personen har kört som summeras till antalet totalpoäng
Mest points vinner cuppen.
Till min fråga, hittills tror jag att jag fått till det att fungera. Men om en person har kört 7 tävlingar så måste jag filtrera bort 2 tävlingar som har lägst cuppoäng (wcp_point)
Jag får bara räkna max 5 tävlingar och de som har högst cuppoäng.
Där kör jag fast, får det inte att fungera....
Någon som kan bistå mig i detta problem?
Det blir väl typ Select TOP 5 wcp_point, men det blir felaktigt än hur jag gör det.........
Case 1 : MyDataAdapter = New SqlDataAdapter("SELECT SUM(wcp_point) AS points, Count(class) AS race, firstname, lastname, did FROM wcpcup " &
"Where continent = @continent " &
"AND (class IN ('SM1', 'SM1V', 'SM2', 'SM2V', 'PM1', 'PM4', 'CM')) " &
"AND (date_event BETWEEN '" & startdate & "' And '" & enddate & "') " &
"GROUP BY firstname, lastname, did ORDER BY points DESC", MyConnection)
Case 2 : MyDataAdapter = New SqlDataAdapter("SELECT SUM(wcp_point) AS points, Count(class) AS race, firstname, lastname, did FROM wcpcup " &
"Where continent = @continent " &
"AND (class IN ('SW1', 'SW1V', 'SW2', 'SW2V', 'PW1', 'PW4', 'CW')) " &
"AND (date_event BETWEEN '" & startdate & "' And '" & enddate & "') " &
"GROUP BY firstname, lastname, did ORDER BY points DESC", MyConnection)
↧