I mitt räknarskript (ASP/Access) använder jag följande tabell (vid namn "pagecounts") för att lagra träffar:
----------------------------------------------
| countdate | hits | uniquehits | nocookies |
----------------------------------------------
| 2001-01-01 | 43 | 7 | 1 |
----------------------------------------------
Jag vill nu visa träffar månadsvis och tänkte då först göra ungefär så här:
Set rsYears = conn.Execute("SELECT DISTINCT Year(countdate) FROM pagecounts")
Do Until rsYears.EOF
Set rsMonths = conn.Execute("SELECT DISTINCT Month(countdate) AS monthnumber FROM pagecounts WHERE Year(countdate) = " & rsYears(0))
Do Until rsMonths.EOF
Set rsHits = conn.Execute("SELECT * FROM pagecounts WHERE Year(countdate) = " & rsYears(0) & " AND Month(contdate) = " & rsMonths(0))
'loopa ut träffar
rsMonths.MoveNext
Loop
rsYears.MoveNext
Loop
Men det känns som om det skulle gå att klara av detta på en eller två frågor istället för tre, och det är det jag skulle behöva hjälp med. Kan någon föreslå ett mer effektivt sätt att åstadkomma detta?
RED: Den sista SQL-frågan blev lite fel, men ni förstår säkert principen.