![]() |
|
|
|||||||
| ASP Diskussioner om Active Server Pages, med relaterade scriptspråk (klassisk asp). |
![]() |
|
|
Trådverktyg | Visningsalternativ |
|
|
#1 |
|
Medlem
Registrerad: 2012-08-07
Inlägg: 16
Lösningar: 0 |
Räknefråga Access & ASP
Hej,
jag har försökt hitta information om hur man räknar ut hur många gånger ett antal värden förekommer i en kolumn t.ex. Hur många gånger finns värdena 18-29 för ett visst PlayerID. Det jag vill åstadkomma är att skriva ut hur många gånger personen fått resultat mellan 18 och 29 och skriva ut detta på en statistiksida. Totalt sett vill jag få ut detta för dessa intervaller av resultat: 18-29 30-35 36-39 40-126 I databasen finns tabellen tbl_res och i den finns kolumnerna PlayerId och TOTAL som jag misstänker är dom enda som behövs för detta. Som det är uppbyggt idag så har programeraren gjort olika uträkningar i separata filer som han sedan includat i sidan. Dom uträkningar som finns idag är Antal rundor, Lägsta score, Medelscore och Högsta score. Sidan dom plockas upp i ser ut så här: Kod:
<span style="padding-left: 5px;" class="rub"><b>
<% Set objrs=Conn.Execute("Select Namn, Efternamn, PlayerImg From tbl_player Where PlayerId= '"& strpID &"' ") %> <%=objrs("Namn")%> <%=objrs("Efternamn")%></b></span><br /> <br />
<table border="0" width="152" cellspacing="0" cellpadding="4">
<tr>
<td width="80">Antal varv: </td>
<td><% Set AntalV=Conn.Execute("Select Count(*) As antal From tbl_res Where PlayerId= '"& strpID &"' ") %> <b><%=AntalV("Antal")%></b></td>
</tr>
<tr>
<td>Lägsta varv: </td>
<td><!--#Include file="Lowest.asp" --></td>
</tr>
<tr>
<td>Snitt:</td>
<td><!--#Include file="Average.asp" --></td>
</tr>
<tr>
<td>Högsta varv:</td>
<td><!--#Include file="Highest.asp" --></td>
</tr>
<tr style="display: none;">
<td colspan="3"><br /> <br /> </td>
</tr>
</table>
Personen som byggde systemet från början finns inte längre ibland oss (RIP) och jag försöker nu rodda runt i detta så bra jag kan som den novis jag är på detta. Hoppas att någon vänlig själ kan hjälpa mig med detta. Behövs något mer så postar jag givetvis det som ni behöver veta bara jag vet vad jag behöver leta efter i koden. Tacksam för all hjälp jag kan få. |
|
|
|
|
|
#2 |
|
Medlem
Registrerad: 2009-12-10
Ort: Bangalore
Inlägg: 816
Lösningar: 11 |
18-29
30-35 36-39 40-126 Om du vet vilka nummer som avses borde SQL kunna lösa det där... SELECT intID, strName FROM [users] WHERE intScore > 18 AND intScore < 29 Öhh... nej, du ska använda COUNT... Kan du SQL? Eller känner till lite?
__________________
- Vad hette La Liga då det begav sig? - Då Liga. |
|
|
|
|
|
#3 |
|
Medlem
Registrerad: 2012-08-07
Inlägg: 16
Lösningar: 0 |
Hej Civilpolisen,
tyvärr kan jag inte så mycket om detta. Har bara börjat lära mig lite grundläggande ASP, började med detta för ca 14 dagar sedan. Tar därför gärna emot all hjälp jag kan få oavset om det är kod eller länkar till artiklar som handlar om detta. |
|
|
|
|
|
#4 | |
|
Medlem
Registrerad: 2009-12-10
Ort: Bangalore
Inlägg: 816
Lösningar: 11 |
Kod:
<% Set AntalV=Conn.Execute("Select Count(*) As antal From tbl_res Where PlayerId= '"& strpID &"' ") %>
Men han som gjort projektet verkar inte heller ha full koll... PlayerID bör vara ett nummer men är en textsträng. strpID borde vara strID och i så fall som text, men det är ju fånigt att ha ett ID nummer som text... Du kan lätt se att det är text för det är omgärdat av enkelfjumpar och det är det om en kolumn är text. Skulle playerID vara numerisk skulle det vara utan enkelfjumpar. Jag tycker han som har gjort hemsidan har ... ja, en lösning som kan vara lite klurig för den oinsatte att förstå sig på. Men det kommer inte att hjälpa dig! Detta är samma sak: Citat:
*** Jag har tid att passa så jag hinner inte skriva kod nu. Kanske sen. Nån annan kanske hinner före...??
__________________
- Vad hette La Liga då det begav sig? - Då Liga. |
|
|
|
|
|
|
#5 |
|
Medlem
Registrerad: 2012-08-07
Inlägg: 16
Lösningar: 0 |
Jag har lyckats få till det så pass långt att det fungerar om jag anger en exakt siffra att leta efter men jag får inte till det när jag försöker leta efter ett intervall av siffror.
Denna kod genererar värdet 3 på en spelare som har fått 26 poäng 3 ggr. Kod:
<% Set AntalB=Conn.Execute("Select Count(TOTAL) As antalbla From tbl_res WHERE TOTAL=26 AND PlayerId= '"& strpID &"' ") %>
Hoppas att någon kan guida mig rätt
|
|
|
|
|
|
Markerad som löst av climber #6 |
|
Medlem
Registrerad: 2012-08-07
Inlägg: 16
Lösningar: 0 |
Skam den som ger sig, löste det på detta sätt:
Kod:
<% Set AntalB = Conn.Execute("SELECT COUNT(TOTAL) AS AntalBla FROM tbl_res WHERE (TOTAL) BETWEEN 18 AND 29 AND PlayerId= '"& strpID &"'") %>
|
|
|
|
|
|
#7 |
|
Medlem
Registrerad: 2009-12-10
Ort: Bangalore
Inlägg: 816
Lösningar: 11 |
Tack!!
Visste inte jag heller!! Det vet jag att jag också har nytta av i en skapligt överkomlig framtid!! Tack för kod!! :-)
__________________
- Vad hette La Liga då det begav sig? - Då Liga. |
|
|
|
![]() |
| Trådverktyg | |
| Visningsalternativ | |
|
|