PoffeMedlem sedan apr. 20022 743 inlägg Hej!
Jag har en statistik databas där alla träffar sparas i en egen post med information om besökaren. Jag räknar sedan ut ex. vilken browser som är den mest använda under en viss period och hur många ggr den har används med denna kod:
Set RS = Connect.Execute("SELECT COUNT(*) AS Antal, Browser FROM (SELECT * FROM Stat WHERE Month = "& viewmonth &" AND Year = "& viewyear &" ORDER BY Browser) GROUP BY Browser ORDER BY 1 DESC")
hitbrowser = RS("Antal")
RS.Close
Den funkar utmärkt mot Access men inte mot MySQL. Databasen börjar vi detta lag bli rätt stor så jag tänkte att dte skulel vara bra att yta till en MySQL men då ehöver jag ju en fungerande kod...
Hoppas att någon vet hur jag ska göra!
Tack på förhand
// Poffe
LarsGMedlem sedan dec. 200012 464 inlägg Mysql har inte stöd för subselect, men din fråga går att skriva lite enklare.
Set RS = Connect.Execute( _
"SELECT COUNT(*) AS Antal, Browser FROM Stat " & _
" WHERE Month = "& viewmonth & _
" AND Year = "& viewyear & _
" GROUP BY Browser " & _
" ORDER BY 1 DESC")
PoffeMedlem sedan apr. 20022 743 inlägg var det koden för access eller mysql?
om det var access: går det inte att lösa om man använder mysql?
PatrikBMedlem sedan mars 20002 836 inlägg Den SQL-frågan ger alltid tillbaka ett tomt recordset med mySQL.
Tyvärr måste du lösa det med flera recordsets då det finns en massa begränsningar i myODBC som är limmet mellan mySQL och asp.
cya,
PatrikB
PatrikBMedlem sedan mars 20002 836 inlägg Du får göra ngt liknande detta för att lösa hur många som använder de olika browsers som finns.
Tyvärr kan jag ej testa just nu mot mySQLen så koden är lite otestad :e
strSQLbr = "SELECT DISTINCT Browser FROM STAT"
Set objRSbr = Connect.Execute(strSQLbr)
While Not objRSbr.EOF
strBrowser = objRSbr(0)
'## -- räkna hur många som använder denna browser --
strSQLtmp = "SELECT Count(*) FROM Stat WHERE Browser = '" & strBrowser & "'"
Set objRStmp = Connect.Execute(strSQLtmp)
intBrowserCount = objRStmp(0)
'## -- printa ut --
Response.Write intBrowserCount & " st. använder browsern " & strBrowser & "<BR>"
Set objRStmp = Nothing
objRSbr.MoveNext
Wend
Set objRSbr = Nothing
cya,
PatrikB
PoffeMedlem sedan apr. 20022 743 inlägg Tack för hjälpen PatrikB!
LarsGMedlem sedan dec. 200012 464 inlägg Patrik, nu blir jag nyfiken:
Den SQL-frågan ger alltid tillbaka ett tomt recordset med mySQL.
Varför?
PatrikBMedlem sedan mars 20002 836 inlägg mot mysql tillsammans med asp så har jag alldrig fått den att funka.
Det är antingen ngt som inte finns med i myODBC eller så är det en bugg i myODBC.
Kör jag samma sql-fråga i tex mySQL Front så får jag tillbaka recordsetet med alla poster räknade och ordnade helt perfekt. På en asp-sida däremot kommer det tillbaka ett tomt recordset.
Varför? ärligt så vet jag faktiskt inte ...... den borde funka ....... men om jag inte minns helt fel så hade även Jörgen HP problems med denna typ av sql-frågor
cya,
PatrikB
PatrikBMedlem sedan mars 20002 836 inlägg för er andra som är intresserade ställde jag en liknande fråga i mySQL forumet för ett tag sedan.
http://www.webforum.nu/showthread.php?s=&threadid=37606&highlight=PatrikB
cya,
PatrikB
LarsGMedlem sedan dec. 200012 464 inlägg Jag tror nog att Herman kan ha en poäng med BIGINT eftersom resultatet av en count får den typen. Har du testat med det han föreslog?
PatrikBMedlem sedan mars 20002 836 inlägg Jepp, testade det jag fick ..... men inte funkade det inte.
cya,
PatrikB
PatrikBMedlem sedan mars 20002 836 inlägg testade på jobbets mySQL och då funkade denna:
strSQL = "SELECT Count(*), Field FROM Table GROUP BY Field ORDER BY 1 DESC
med denna connstring:
""driver=MySQL;server=xxx.xxx.xxx.xxx;uid=username;pwd=password;database=dbname;OPTION=16384;"
har mega strul med min installation av mySQL på min utvecklingsmaskin .... fast jag rensar hela maskinen från allt vad mySQL heter så återkommer problemen hela tiden.
Ingen som vet "hur" man kan rensa ut mySQL ... eller är det en ominstallation som gäller?
cya,
PatrikB