webForumDet fria alternativet

Hur sorterar man ett recordset?

ASP

8 svar · 304 visningar · startad av daniel_ra

Medlem sedan jan. 2002381 inlägg
Frågan#1

Jag skulle behöva sortera ett recordset utefter en postkolumn i den. Jag hämtar ett ID och ett tal med en decimal. Jag skulle därefter vilja plocka ut de 10 poster som har det högsta talet i sig.

recordsetet ser alltså ut typ såhär:

ID Tal
1 4,7
2 5,9
3 6,3
4 1,0

osv

om det går att sortera recordsetet efter talen så skulle jag ju kunna plocka ut de tio första posterna i det och därmed få ut de tio största talen. Om detta inte går så undrar jag om jag kan plocka ut de tio största talen direkt ur recordsetet.

Tack på förhand.

Jag krånglar visst till det lite för mig ibland.. =)

Medlem sedan juni 20019 519 inlägg
#2

"Select top(10) from tabell order by tal"

Medlem sedan jan. 2002381 inlägg
#3

det lär ju fungera men saken är den att jag måste räkna fram dessa tal efter det att jag hämtat värden från databasen. Det är olika medelvärden som jag räknar fram och sedan lägger i ett recordset.

Medlem sedan juli 20012 450 inlägg
#4

Visa hela databasen så kanske dte lättare. Kan kan göra uträkningar i sql-satsen.
Du kan inte sortera i en RecordSet.

Medlem sedan jan. 2002381 inlägg
#5

hur kan jag göra uträkningar i en sql-sats?

de värden jag mest räknar på är dessa:

ID, vikt och antal. exempel:

ID Vikt Antal
1 348 4
2 531 5
3 498 6
4 123 3
5 147 4

osv...

dessa värden hämtar jag från min databas.

jag vill sedan presentera de 10 ID där medelvärdet av vikt/antal är högst. Kan man lösa det med arrayer eller nåt..

Det står helt still i huvudet

Medlem sedan dec. 200012 464 inlägg
#6

Det går att sortera ett recordset

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdprosortpropertyado.asp

men det är bättre att göra det i SQL.

query = "select top 10 vikt/antal from t order by 1 desc"

Hur kommer medelvärdet in i bilden?

Medlem sedan jan. 2002381 inlägg
#7

jag vill kunna jämföra olika medelvärden med varandra. Jag vill även kunna plocka ut vissa saker vars medelvärde är högst.

Hur kommer recordsetet se ut om jag gör som ovan?

får jag med alla poster från databasen så att jag kan skriva ut dem?

Medlem sedan nov. 20017 144 inlägg
#8

får jag med alla poster från databasen så att jag kan skriva ut dem?

Ja, med den lilla stjärnan

query = "select top 10 * from t order by 1 desc"
Medlem sedan jan. 2002381 inlägg
#9

tack för all hjälp

255 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)