webForumDet fria alternativet

Mindre krävande kod

ASP

3 svar · 239 visningar · startad av MoonCow

Medlem sedan juni 2001223 inlägg
Frågan#1

Hejsan!
Jag förstår själv att denna koden är mycket resurskrävande då den körs väldigt ofta:

strSQL1= "SELECT * FROM mess WHERE motagare = '" & Session("namn") & "' ORDER BY nowen DESC"
Set RecSet = Databas.Execute(strSQL1)
antal = 0
Do Until RecSet.EOF

If RecSet("last") = "nej" Then

antal = antal + 1
nya = "jepps"

end if
	
RecSet.MoveNext
Loop
RecSet.Close

Har försökt en del, men mina sql-kunskaper räcker nog inte. Finns väl något som heter typ rowcount eller så.
Är det någon som är hygglig och berättar för mig hur jag skulle kunna lösa detta i sqlsatsen utan att behöva öppna att recordset.
Kör med mySQL!

mvh,
Max :bire

Medlem sedan dec. 20003 563 inlägg
#2
sqlcmd = "SELECT (SELECT count(*) FROM mess) as antal, (SELECT count(*) FROM mess WHERE last = 'nej') as nya WHERE mottagare = '"&session("namn")&"' ORDER BY datum DESC"

Set RecSet = Databas.Execute(sqlcmd)

antal_nya = RecSet("nya")
sammanlagt = RecSet("antal")

Set RecSet = nothing

:)

Medlem sedan juni 2001223 inlägg
#3

Tack! Ni killar är för jävla braaa!!!! GOD JUL :D

Medlem sedan juni 2001223 inlägg
#4

Edit:
Man ska inte säga hej förän man är över bäcken :/.
Får:

[TCX][MyODBC]You have an error in your SQL syntax near 'SELECT count(*) FROM mess) as antal, (SELECT count(*) FROM mess WHERE last = 'ne' at line 1 

/aktivitet.asp, line 78

Den raden är just den med den koden.
Kan det ha med att jag kör mySQL?

261 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)