Mailinglisten-Archive |
Reinhold Jordan wrote: >>du hast z.B.: >> >>timestamp | recieve | transmit >>---------------------------------------- >>2004-11-17 12:00:00 | 300 | 500 >>2004-11-18 12:30:00 | 200 | 9000 >>2004-11-18 12:45:00 | 500 | 100 >>2004-11-19 11:00:00 | 700 | 50 >> >> >>und willst: > > > Ja, das hier: > > >>timestamp | recieve | transmit >>---------------------------------------- >>2004-11-17 12:00:00 | 300 | 500 >>2004-11-18 12:30:00 | -100 | 8500 >>2004-11-18 12:45:00 | 300 | -8900 >>2004-11-19 11:00:00 | 200 | -50 > > > > Nu, daß die Werte eigentlich immer größer als die verhergehenden sind, > negative Differenzen also nicht vorkommen. > > Die erste Zeile ist dabei nicht so wichtig. > > Die Abstände sind jeweils 5 Minuten, aber die Sekunden sind nicht > immer gleich 0. Die Annahme, daß int(timestamp/600) ein lückenloser > Index ist, könnte vielleicht helfen... SELECT `table_1`.`recieve` - `table`.`recieve`, ... FROM `table` LEFT JOIN `table` AS `table_1` ON `table_1`.`timestamp` / 600 BETWEEN `table`.`timestamp` / 600 AND (`table`.`timestamp` + 1200) / 600 oder so ähnlich, weiß jetzt nicht genau ob das mit den Timestamp werten genau so hinheut, eventuell muss man noch umwandeln zwischendurch, glaube aber nicht. -- Sebastian Mendel www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive