<%
Set Connect=server.CreateObject("adodb.connection")
DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.mappath("db/mess.mdb")
Connect.Open DSNtemp
SQLStmt = "Select personid, Max(kastmedboll) AS cntBoll from stats"
Set RS = Connect.Execute(SQLStmt)
%>
<%=RS("Cntboll")%>
PersonID hette det inte UserID..Jag får meddelandet
[Microsoft][ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expression 'personid' as part of an aggregate function.
Sen undrar jag om det inte finns någe sätt att loopa igenom alla grenar dynamiskt. Som det är nu måste jag ju skriva en sqlsats för varje gren..
jag kanske var lite oklar, vid varje vinst får det +1 i fältet för den grenen de vann...alltså vinner jag i kast med liten boll får jag värdet tidigare för rätt användare i kast med liten boll + 1..
------------------
1 Man, 1 Million dead, The odds are just about even - Ash
Nja, din SQL sats blir nog lite mer komplicerad än så
Select username, usernick, 'Kast med boll', kastmedboll
from user join stats using (userid)
where kastmedboll in (select max(kastmedboll)
from stats)
Du kan ju testa ut den här SQLsatsen separat.
User är inget bra kolumnnamn då det är ett reserverat ord i de flesta SQLdialekterna. Det är inte heller bra att namnet inleds med siffror då man måste specialhantera detta.
Om du vill ha de andra grenarna också, så är det nog enklast att göra en union
Select username, usernick, 'Kast med boll', kastmedboll
from user join stats using (userid)
where kastmedboll in (select max(kastmedboll)
from stats)
union
Select username, usernick, 'Längdhopp',
langdhopp
from user join stats using (userid)
where langdhopp in (select max(langdhopp)
from stats)
union
Select username, usernick, '60 meter',
[60meter]
from user join stats using (userid)
where [60meter]in (select max([60meter])
from stats)
Det fungerar bra om du samma typ i alla tre kolumnerna.
------------------ essentitia preter non sans multiplicandum
<%
Set Connect=server.CreateObject("adodb.connection")
DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.mappath("db/mess.mdb")
Connect.Open DSNtemp
SQLStmt = "Select MAX("& Request.Querystring("gren") &") AS MaxPoints from stats"
Set RS = Connect.Execute(SQLStmt)
SQLStmt2 ="SELECT personid FROM stats WHERE "& request.querystring("gren") &" =" & RS("maxPoints") & ""
Set RS2 = Connect.Execute(SQLStmt2)
Response.Write(SQLStmt)
Response.Write(SQLStmt2)
%>
<br><br>
<%=rs2("personid")%><br>
<%=RS("MaxPoints")%>
skickar med vilken gren jag vill ha i en querystring och fixar det utifrån där. Men hur gör man nu om man vill ha alla grenar på en och samma sida..
återkommer om inte någon gör det före mig..
------------------
1 Man, 1 Million dead, The odds are just about even - Ash
268 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2