webForumDet fria alternativet

Slå ihop två frågor

Databaser & SQL

4 svar · 176 visningar · startad av Skarre

Medlem sedan apr. 20012 427 inlägg
Frågan#1

Jag är fortfarande novis när det gäller SQL och undrar om någon kan hjälpa mig. Jag försöker göra en lista (med ASP) över hur många inlägg varje person har gjort i en specifik tråd och lyckas med nedanstående slarvlösning, men jag måste troligtvis slå ihop frågorna för att kunna sortera resultatet efter antal inlägg, men jag vet inte riktigt hur. Det är en vBulletin-databas.

Set rsUserID = objConn.Execute("SELECT DISTINCT userid, username FROM post WHERE threadid = 2020 ORDER BY postid")
Do Until rsUserID.EOF
	
	Set rsPostCount = objConn.Execute("SELECT COUNT(*) FROM post WHERE threadid = 2020 AND userid = " & rsUserID(0))
	%>
		<tr>
			<td><%=rsUserID(1)%></td>
			<td><%=rsPostCount(0)%></td>
		</tr>
	<%
	
	rsUserID.MoveNext
Loop
Medlem sedan juli 2002145 inlägg
#2

Hej!

Så här borde du kunna skriva:

SELECT userid, username, count (*) as antal
FROM post 
WHERE threadid = 2020 
GROUP BY userid, username
ORDER BY postid
Medlem sedan apr. 20012 427 inlägg
#3

Det blir ungefär samma resultat, men jag kan fortfarande inte sortera efter antal inlägg.

Medlem sedan apr. 20012 427 inlägg
#4

Jag lekte lite med frågan och nu fungerar den. Tack för hjälpen Agneta!

"SELECT username, count(*) as antal FROM post WHERE threadid = 2020 GROUP BY userid, username ORDER BY antal"
Medlem sedan juli 2002145 inlägg
#5

Oops, jag läste visst inte hela frågan! :r Men det gick ju bra ändå... :)

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