Just nu i M3-nätverket
Jump to content

MS Sql select sats...


kjell.ek
 Share

Recommended Posts

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)

 

Link to comment
Share on other sites

Fungerar din order by som förväntat? För då räcker det kanske med att du i din .NET kod sen gör en loop som bara går fem snurr.

Link to comment
Share on other sites

 Share

×
×
  • Create New...