Visa ett inlägg
Oläst 2008-11-29, 23:51 #4
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Lindahl Lindahl är inte uppkopplad
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.
Lindahl är inte uppkopplad   Svara med citatSvara med citat