A.L.E.C napisał(a):
Jarosław Haczyk wrote:
SELECT SUM(upload), SUM(download), CEIL(dt/delta) FROM stats WHERE nodeid=x GROUP BY CEIL(dt/delta)
W sumie to jest do ALEC-a, podane przez Ciebie zapytanie nie nadaje się w tej sytucji. Wiem o co ci chodzi i zamiast foreach można zastosować funkcje SUM sql'a, ale samo zapytanie musi juz tak pozostac. Sprawdzilem jak jest w dbcompact
SELECT sum(upload) as upload, sum(download) as download FROM stats WHERE dt >= ? AND dt < ? AND nodeid=? GROUP BY nodeid
policz ile razy to zapytanie wykonujesz, na dużej bazie masakra, moje jest wykonywane tylko raz, a robi to co trzeba, zwraca sumę wartości dla każdego przedziału czasu, oczywiście trzeba mu jeszcze dodać warunek ograniczający wyniki do początku i końca okresu (godzina, dzień, miesiąc, rok) i odpowiednio dobrać deltę.
to czemu nie ma tak pieknie w trafficdbcompact ???
!DSPAM:47c80fc1219081250119904!