Hur gör man för att göra 5 olika counts i samma RecSet?
Set rs = Connect.Execute("SELECT Count(username) From members")
Set rs2 = Connect.Execute("SELECT Count(username) From members Where status = 'online'")
Set rs3 = Connect.Execute("Select id From gb Order BY id Desc LIMIT 1")
Set rs4 = Connect.Execute("Select messageid From mailin Order BY messageid Desc LIMIT 1")
Set rs5 = Connect.Execute("SELECT Count(postid) From forumpost")
Hmm jag har ett problem med koden ovan, vad gör jag för fel?
felet pekar på den markerade raden
Mysql = "SELECT Count(ID) FROM wgs_categories where belongto = 0 UNION SELECT count(ID) from wgs_categories UNION SELECT count(ID) from wgs_scripts"
set RS = connect.Execute(MySQL)
dim scripts, categories, languages
languages = rs(0)
[B]categories = rs(1)[/B]
scripts = rs(2)
Du hämtar bara ett fält, så då är det svårt att försöka sno data från icke-existerande fält två och tre i ditt recordset. Ditt recordset består av tre poster, med ett fält var.
Det där förstog jag inte riktigt.. hur skall jag bära mig åt för att kunna ha flera count och kunna lagra varje count resultat i en variabel? Använder MySQL
Du får tre poster, inte tre fält. Därför kan du inte hänvisa till fält två och tre, eftersom de inte finns. Resultatet ser ut så här:
-------------
123
192
28
Den första posten innehåller resultatet från den första frågan i din union, den andra posten från den andra frågan, osv. Du får helt enkelt gå igenom ditt recordset. Efter movenext är det ett nytt värde, ny variabel.
Om man man sen vill undvika (iofs sällsynta men) väldigt svårfunna buggar så bör det väl egentligen vara "UNION ALL"?
I övrigt förstår jag inte alls varför man vill ställa frågan på det här sättet. Det känns mest som om det ger krystad och svårläst kod i jämförelse med ursprungskoden.
Om man man sen vill undvika (iofs sällsynta men) väldigt svårfunna buggar så bör det väl egentligen vara "UNION ALL"?
Helt klart, my bad.
I övrigt förstår jag inte alls varför man vill ställa frågan på det här sättet. Det känns mest som om det ger krystad och svårläst kod i jämförelse med ursprungskoden.
Det håller jag med om. Tjänar man egentligen någonting på att lägga ihop dessa till en query? Försumbart, skulle jag gissa på.
Ok nu förstår jag, tackar för förklaringen och får se om jag lägger ihop dom, hade fått uppfattningen om att det skulle vara mer optimerat än 3 separata sql satser.
263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849