Mycket flitig postare
|
|
Reg.datum: Dec 2004
Inlägg: 854
|
|
Mycket flitig postare
Reg.datum: Dec 2004
Inlägg: 854
|
Finns ju några olika varianter att lösa problemet. Generellt inom programmering gäller ofta att snabbare algoritmer kräver mer minne, medan minneseffektiva algoritmer går något långsammare.
I detta fallet skulle man exempelvis istället för att lägga en post i databasen med en tidsperiod istället lägga en post per dag. Det skulle kräva fler rader i databasen, men blir mycket enklare att få fram summan genom att helt enkelt bara summera alla rader som faller inom intervallet. Du vet dessutom hur många träffar du får i databasen på aktuellt intervall, ta då antal dagar som saknas upp till det aktuella antalet dagar och multiplicera med standardpriset... Summan ger totalpriset.
Om man kan anta att vissa villkor gäller, exempelvis att standardpriset alltid är lägre än intervallpriset eller liknande så går det säkert klura ut nån fiffig algoritm också.
Kanske är det avvikelsen mot standardpriset man ska ha i databasen? Då skulle totalpriset bli antal*standardpriset+summan från databasfrågan. SELECT SUM(`price`-$standardpris) FROM tbl WHERE...
Jag ger dig kanske inte det svaret du ville ha, men ledtrådar på hur man kan tänka.
|