Jag håller på med en besöksräknare och vill lägga ihop alla "resultat" i varje månad till ett resultat. Alltså om vi säger att senaste månaden har jag haft 500 besök varje dag. Om jag hämtar de med.. Det är snyggare att skriva: För nu räknar den bara ut antalet "poster" i tabellen som är i oktober 2003 =\ Berätta hur din datastruktur ser ut? Antar att du akumelerar besök per dag? Aa, precis Sorry. Missade att ändra Count till sum. ;o)Lägga ihop flera värden?
<code>
Sql = "Select * from besokare Where Month(d_datum) = '" & Month(now) & "' AND Year(d_datum) = '" & Year(now) & "'"
</code>
Då hämtar den varje dag var för sig, men hur lägger jag ihop alla dagarna?Sv: Lägga ihop flera värden?
<code>
Dim FirstDate
Dim LastDate
FirstDate = DateSerial(Year(Date), Month(Date), 1)
LastDate = DateAdd("m", 1, FirstDate)
strSQL = "SELECT Count(*) As AhntalBesök" & vbCrLf & _
"FROM Besokare" & vbCrLf & _
"WHERE d_datum >= '" & FirstDate "' AND d_datum < '" & LastDate & "'"
</code>
Databsen slipper då anropa en funktion för varje post i tabellen. Vilket oxå ger din möjlighet att använda index om sådant finns på fältet.Sv: Lägga ihop flera värden?
Sv: Lägga ihop flera värden?
Du kan summera ett fält:
<code>
Dim FirstDate
Dim LastDate
FirstDate = DateSerial(Year(Date), Month(Date), 1)
LastDate = DateAdd("m", 1, FirstDate)
strSQL = "SELECT Count(Besokare.Besök) As AntalBesök" & vbCrLf & _
"FROM Besokare" & vbCrLf & _
"WHERE d_datum >= '" & FirstDate "' AND d_datum < '" & LastDate & "'"
</code>
Du får ersätta fältet Besök med eventuellt fältnamn som du använder.Sv: Lägga ihop flera värden?
Jag använder bara de 2 fältnamnen, d_datum och antalbesok. Så jag ändrade till detta
<code>
strSQL = "SELECT Count(besokare.antalbesok) As besok" & vbCrLf & _
"FROM besokare" & vbCrLf & _
"WHERE d_datum >= '" & FirstDate & "' AND d_datum < '" & LastDate & "' "
</code>
Men det blir fortfarande samma problem. Någon som vet vad jag gjort fel?Sv: Lägga ihop flera värden?
Testa med:
<code>
strSQL = "SELECT Sum(besokare.antalbesok) As besok" & vbCrLf & _
"FROM besokare" & vbCrLf & _
"WHERE d_datum >= '" & FirstDate & "' AND d_datum < '" & LastDate & "' "
</code>
Borde ge dig önskat resultat.