Nope, ingen ordning. Kör nu med:
SQL = "SELECT Nick,COUNT(*),max(datumet) AS antal FROM Senaste GROUP BY Nick order by 3 desc"
Då blir resultatet:
Nicketsomlistasförst(2002-11-27 03:29:00)
37 svar · 693 visningar · startad av Inferis · sida 2 av 2
Jag har ingen kod och vet inte hur jag ska gå till väga. Vet inte vad jag ska söka efter. Jag vill följande; Hämta data (nick) ur en Access 2000 db Sortera dessa data och räkna hur många meddelanden vart har. I tabellen Senaste finns fälten ID, Nick, Meddelande och även datumet Alltså, i fältet Nick finns data som: - Bertil - Adam - Bertil - Adam - Adam - Adam - Ceasar - Berti
Läs frågan i sin helhet →Nope, ingen ordning. Kör nu med:
SQL = "SELECT Nick,COUNT(*),max(datumet) AS antal FROM Senaste GROUP BY Nick order by 3 desc"
Då blir resultatet:
Nicketsomlistasförst(2002-11-27 03:29:00)
SQL = "SELECT Nick,COUNT(*) AS antal,max(datumet) FROM Senaste GROUP BY Nick order by 3 desc"
bör det väll vara?
-Eitraz
Hade inte varit dumt med att lista så här:
Nick (antal poster) datum_på_senaste_post
Där man sorterar så att nyaste Meddelande kommer överst.
Man lär sig nåt nytt varje dag säger dem..
jag har idag lärt mig för en vecka framåt! :-)
Tack ska ni ha!
Det duger utmärkt som det är nu. Den vill inte skriva ut datumet. men det är strunt samma.
SQL = "SELECT Nick,COUNT(*) AS antal,max(datumet) as datumet FROM Senaste GROUP BY nick ORDER BY datumet DESC"
Set RS = Connect.Execute(SQL)
Do Until RS.EOF
Response.write RS("Nick") & " (" & RS("antal") & ")" & " " & RS("datumet") & "<br>"
RS.MoveNext
Loop
Set RS = Nothing
med datum o hela köret ska det där vara..
-Eitraz
ahh, deklarerade visst AS datumet.. och datumet är ett fält.. den fick nog lite problem där ;)
byt
SQL = "SELECT Nick,COUNT(*) AS antal,max(datumet) as [red]datum[/red] FROM Senaste GROUP BY nick ORDER BY [red]datum[/red] DESC"
Set RS = Connect.Execute(SQL)
Do Until RS.EOF
Response.write RS("Nick") & " (" & RS("antal") & ")" & " " & [red]RS("datum")[/red] & "<br>"
RS.MoveNext
Loop
Set RS = Nothing
-Eitraz
Access gillar inte att man använder befintliga kolumnnamn som alias. Det går heller inte att använda alias i order by.
SQL = "SELECT Nick,COUNT(*) AS antal,max(datumet) as maxDatumet FROM Senaste GROUP BY nick ORDER BY 3 DESC"
Set RS = Connect.Execute(SQL)
Do Until RS.EOF
Response.write RS("Nick") & " (" & RS("antal") & ")" & " " & RS("maxDatumet") & "<br>"
RS.MoveNext
Loop
Set RS = Nothing
Jo, det är access som har en defekt i detta avseende.
Nope, nu gnäller hon om
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
LarsG:
Ditt sista fungerade!
Det andra hade funkat på MySQL?
Men om jag nu vill sortera efter vartannat nick som postat på ojämna veckor och inte har skrivit ett meddelande som innehåller åä eller ö?
*skojar bara*
c",)
Tack ska ni har killar!
<table width="150" border="0" cellpadding="0" cellspacing="0" class="asp10">
<%
Set ConnObj = SErver.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.RecordSet")
ConnObj.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("admin/ranking/rate.mdb")
SQL = "Select Distinct(Nick) from ranking ORDER BY Nick ASC"
Set Rs = ConnObj.Execute(SQL)
Do Until Rs.EOF %>
<tr>
<% CountSQL = "Select Count(*) AS nCount from ranking Where Nick = '"& Rs("Nick") &"'"
Set antal = ConnObj.Execute(CountSQL)
Do Until antal.EOF
%>
<td width="100" height="16">
<%
Response.write Rs("Nick") %>
<td width="100" height="16">
<% Response.write antal("nCount") %>
<%
antal.MoveNext
Loop
Rs.MoveNext
Loop
ConnObj.Close
%>
<tr>
<td width="94">
<td width="87">
</table>
När jag använder denna kod så får jag fram en lista på Nickname och antal. Hur gör jag för att sortera efter antal.??
Har just nu ORDER BY Nick funkade ej med ORDER BY antal Varför??
Tacksam för svar.
i raden
SQL = "Select Distinct(Nick) from ranking ORDER BY Nick ASC"
måste du då ha med antal i select, dvs:
SQL = "Select Distinct(Nick),antal from ranking ORDER BY antal ASC"
-Eitraz