feddeMedlem sedan dec. 1999137 inlägg Jag vill få ut det totala värdet per kundId i topplisteform.
Jag får ut mina värden korrekt med diverse IF-satser. Men då kan jag inte sortera listan efter summan. Så jag förmodar att jag måste göra summeringen i SQL-satsen.
ASP+Access är det som används.
Jag har i min tabell "data" bl.a dessa kolomner:
kundid och varde
Jag har även kolumnen "kundid" i tabellen "adminuser" om det kan vara till hjälp.
LarsGMedlem sedan dec. 200012 464 inlägg select kundid,sum(varde)
from data
group by kundid
order by 2 desc
feddeMedlem sedan dec. 1999137 inlägg Jag får fel när jag ska plocka ut summan. Vad ska jag skriva?
Set Conn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db
SQL = "select kundid,sum(varde) from data group by kundid order by 2 desc"
rs.Open SQL, Conn
Do While Not rs.EOF
X = X + 1
If X Mod 2 = 0 then
color = tabellrad1
Else
color = tabellrad2
End If
response.write "<tr bgcolor=""" & Color & """><td width='100'>KundID: " & rs("kundid") & "</td><td>Summa: " & rs("varde") & "</td></tr>"
rs.MoveNext
Loop
Felkod i browser:
ADODB.Recordset error '800a0cc1'
Item cannot be found in the collection corresponding to the requested name or ordinal.
feddeMedlem sedan dec. 1999137 inlägg Tack!
Funkar perfekt! :birp
Men rs(1) var nytt för mig. Kan du förklara lite?
LarsGMedlem sedan dec. 200012 464 inlägg Det betyder andra kolumnen i resultatet då arrayer i ASP startar på index 0.
UlfTMedlem sedan maj 20018 027 inlägg Ett annat alternativ kan ju vara att skriva sql-frågan som:
SQL = "select kundid,sum(varde) [b]as varde[/b] from data group by kundid order by 2 desc"
Då ska rs(varde) fungera.
LarsGMedlem sedan dec. 200012 464 inlägg Det går inte så bra i Access då det finns en kolumn med namnet varde.
feddeMedlem sedan dec. 1999137 inlägg Tack ska ni ha för snabba svar!