webForumDet fria alternativet

Hämta det lägsta värdet

ASP

2 svar · 161 visningar · startad av MickeA.com

Medlem sedan feb. 20034 441 inlägg
Frågan#1

Hej

Ska göra en highscore app. med en Accessdatabas.

Idén är att det bara ska finnas tio namn i databasen. Den är uppbyggd enl. följande:

--------------------------------------------
tbl_highscore
ID - Räknare
Namn - Text
Score - Tal
--------------------------------------------

Nu vill jag ju göra ngn form av koll, innan namnet skrivs in ska det kollas hur många namn det finns, samt att den ska skriva över 'rätt' namn osv.

Har inte kommit på riktigt hur jag ska bära mig åt än, men en tanke vore ju att första kolla vilket det lägsta värdet är, eventuellt skriva över det med det man skrapat ihop, sen sortera det lite fint.

Så, idéer, tankar osv. är hemskt välkommet. Tack !!!

Medlem sedan dec. 20003 563 inlägg
#2

Jag skulle nog bara skriva in alla poster rakt av utan att titta på hur tidigare resultat ser ut.
Och sedan använder en GROUP BY namn när jag läser ut resultaten.

ex.
SELECT namn, max(poäng) FROM tbl_highscore GROUP BY 1 ORDER BY 2 DESC

På det sättet får du det resultatet du vill ha.
(Nackdelen kan väl vara att det blir onödigt många poster)

Annars kan funkar det väl att, varje gång du lägger in ett resultat så kollar du om namnet finns först.
Finns det kör du en UPDATE, annars en INSERT.

ex.
Sname = request.form("name")
Set Rs = conn.execute("SELECT name FROM tbl_highscore WHERE name = '" & Sname & "'")

if Rs.Eof
   ' Kör en insert av namnet här
else
   ' Kör en update av namnet här
end if

Sen är det bara att plocka ut som du tänkt.

Medlem sedan feb. 20034 441 inlägg
#3

Hmm, jo, tack, det här skulle ju kunna vara ngt, ska fundera lite mer, det var lite mer jobb med det här än vad jag tänkt mig från första början ;)

314 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
183 ms — ändringar (db)