webForumDet fria alternativet

Summa per ID i topplisteordning

8 svar · 326 visningar · startad av fedde

feddeMedlem sedan dec. 1999137 inlägg
#1

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
#2
select kundid,sum(varde)
from data
group by kundid
order by 2 desc
feddeMedlem sedan dec. 1999137 inlägg
#3

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.

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Byt

rs("varde")

mot

rs(1)
feddeMedlem sedan dec. 1999137 inlägg
#5

Tack!
Funkar perfekt! :birp

Men rs(1) var nytt för mig. Kan du förklara lite?

LarsGMedlem sedan dec. 200012 464 inlägg
#6

Det betyder andra kolumnen i resultatet då arrayer i ASP startar på index 0.

UlfTMedlem sedan maj 20018 027 inlägg
#7

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
#8

Det går inte så bra i Access då det finns en kolumn med namnet varde.

feddeMedlem sedan dec. 1999137 inlägg
#9

Tack ska ni ha för snabba svar!

126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)