Hallo ich habe folgende Abfrage:
Die Abfrage ergibt folgendes Ergebniss:
description timestmp tsdate tstime tstimest statusCode statuscodedes
Bagger1 1242089555 05 12 02:05:35 05 12 2009 61713 Stop
Bagger1 1242090066 05 12 03:05:06 05 12 2009 61715 Start
Bagger1 1242090666 05 12 03:05:06 05 12 2009 61715 Start
Bagger1 1242092709 05 12 03:05:09 05 12 2009 61715 Start
Bagger1 1242092113 05 12 03:05:13 05 12 2009 61713 Stop
Bagger1 1242091455 05 12 03:05:15 05 12 2009 61713 Stop
Bagger1 1242091461 05 12 03:05:21 05 12 2009 61715 Start
Bagger1 1242090501 05 12 03:05:21 05 12 2009 61715 Start
Bagger1 1242091043 05 12 03:05:23 05 12 2009 61713 Stop
Bagger1 1242091047 05 12 03:05:27 05 12 2009 61715 Start
Bagger1 1242090463 05 12 03:05:43 05 12 2009 61713 Stop
Bagger1 1242090650 05 12 03:05:50 05 12 2009 61713 Stop
Bagger1 1242103797 05 12 06:05:57 05 12 2009 61713 Stop
Bagger1 1242104554 05 12 07:05:34 05 12 2009 61715 Start
Bagger1 1242110774 05 12 08:05:14 05 12 2009 61715 Start
Bagger1 1242109293 05 12 08:05:33 05 12 2009 61713 Stop
Bagger2 1242093841 05 12 04:05:01 05 12 2009 61715 Start
Bagger2 1242093733 05 12 04:05:13 05 12 2009 61713 Stop
Bagger2 1242095961 05 12 04:05:21 05 12 2009 61715 Start
Bagger2 1242095974 05 12 04:05:34 05 12 2009 61713 Stop
Bagger2 1242095503 05 12 04:05:43 05 12 2009 61713 Stop
Bagger2 1242095993 05 12 04:05:53 05 12 2009 61715 Start
Bagger2 1242098292 05 12 05:05:12 05 12 2009 61713 Stop
Bagger2 1242099255 05 12 05:05:15 05 12 2009 61715 Start
Bagger2 1242100423 05 12 05:05:43 05 12 2009 61713 Stop
Bagger2 1242103575 05 12 06:05:15 05 12 2009 61715 Start
Bagger2 1242103827 05 12 06:05:27 05 12 2009 61713 Stop
Bagger2 1242102570 05 12 06:05:30 05 12 2009 61713 Stop
Bagger2 1242102351 05 12 06:05:51 05 12 2009 61715 Start
Bagger2 1242106229 05 12 07:05:29 05 12 2009 61713 Stop
Bagger2 1242105816 05 12 07:05:36 05 12 2009 61715 Start
Bagger2 1242109841 05 12 08:05:41 05 12 2009 61715 Start
Bagger2 1242109965 05 12 08:05:45 05 12 2009 61713 Stop
Bagger2 1242112500 05 12 09:05:00 05 12 2009 61713 Stop
Bagger2 1242111681 05 12 09:05:21 05 12 2009 61715 Start
Das gewünschte Resultat sollte so aussehen:
Tag Montag 06.10.08
Fahrzeug: Bagger1
Pos Start Stop Saldo Decimal
1 06:12 07:12 01:00 1,00h
2 07:14 12:00 04:46 4,76h
3 13:00 17:00 04:00 4,00h
Gesamt 09:46 9,76h
Fahrzeug: Bagger2
Pos Start Stop Saldo Decimal
1 08:12 09:12 01:00 1,00h
2 09:14 14:00 04:46 4,76h
3 15:00 17:00 02:00 2,00h
Gesamt 07:46 7,76h
Wie kann ich mit MySQL (5.1) differenzen zwischen Records Start - Stop berechnen?
Wie kann ich die Summary Row je Fahrzeug berechnen, und die Ausgabe dementsprechend aufbauen?
Danke im voraus!
Code:
SELECT
device.`description` as description,
eventdata.`timestamp` AS timestmp,
FROM_UNIXTIME(eventdata.`timestamp`, '%m %d') AS tsdate,
FROM_UNIXTIME(eventdata.`timestamp`, '%h:%m:%s') AS tstime,
FROM_UNIXTIME(eventdata.`timestamp`, '%m %d %Y %h:%m:%s') AS tstimest,
eventdata.`statusCode` AS statusCode,
CASE WHEN eventdata.statusCode = 61715
THEN 'Start'
WHEN eventdata.statusCode = 61713
THEN 'Stop'
WHEN eventdata.statusCode = 61472
THEN 'Location'
ELSE 'unknown'
END AS statuscodedes
FROM
`eventdata` eventdata,
`device` device,
`account` account
WHERE eventdata.`timestamp` > UNIX_TIMESTAMP('2009-05-12')
AND ((eventdata.`statusCode` = '61713') or (eventdata.`statusCode` = '61715'))
AND eventdata.`accountID` = 'rsm'
AND eventdata.`accountID` = device.`accountID`
AND eventdata.`accountID` = `account`.`accountID`
AND eventdata.`deviceID` = `device`.`deviceID`
ORDER BY description ASC, tstimest ASC;
Die Abfrage ergibt folgendes Ergebniss:
description timestmp tsdate tstime tstimest statusCode statuscodedes
Bagger1 1242089555 05 12 02:05:35 05 12 2009 61713 Stop
Bagger1 1242090066 05 12 03:05:06 05 12 2009 61715 Start
Bagger1 1242090666 05 12 03:05:06 05 12 2009 61715 Start
Bagger1 1242092709 05 12 03:05:09 05 12 2009 61715 Start
Bagger1 1242092113 05 12 03:05:13 05 12 2009 61713 Stop
Bagger1 1242091455 05 12 03:05:15 05 12 2009 61713 Stop
Bagger1 1242091461 05 12 03:05:21 05 12 2009 61715 Start
Bagger1 1242090501 05 12 03:05:21 05 12 2009 61715 Start
Bagger1 1242091043 05 12 03:05:23 05 12 2009 61713 Stop
Bagger1 1242091047 05 12 03:05:27 05 12 2009 61715 Start
Bagger1 1242090463 05 12 03:05:43 05 12 2009 61713 Stop
Bagger1 1242090650 05 12 03:05:50 05 12 2009 61713 Stop
Bagger1 1242103797 05 12 06:05:57 05 12 2009 61713 Stop
Bagger1 1242104554 05 12 07:05:34 05 12 2009 61715 Start
Bagger1 1242110774 05 12 08:05:14 05 12 2009 61715 Start
Bagger1 1242109293 05 12 08:05:33 05 12 2009 61713 Stop
Bagger2 1242093841 05 12 04:05:01 05 12 2009 61715 Start
Bagger2 1242093733 05 12 04:05:13 05 12 2009 61713 Stop
Bagger2 1242095961 05 12 04:05:21 05 12 2009 61715 Start
Bagger2 1242095974 05 12 04:05:34 05 12 2009 61713 Stop
Bagger2 1242095503 05 12 04:05:43 05 12 2009 61713 Stop
Bagger2 1242095993 05 12 04:05:53 05 12 2009 61715 Start
Bagger2 1242098292 05 12 05:05:12 05 12 2009 61713 Stop
Bagger2 1242099255 05 12 05:05:15 05 12 2009 61715 Start
Bagger2 1242100423 05 12 05:05:43 05 12 2009 61713 Stop
Bagger2 1242103575 05 12 06:05:15 05 12 2009 61715 Start
Bagger2 1242103827 05 12 06:05:27 05 12 2009 61713 Stop
Bagger2 1242102570 05 12 06:05:30 05 12 2009 61713 Stop
Bagger2 1242102351 05 12 06:05:51 05 12 2009 61715 Start
Bagger2 1242106229 05 12 07:05:29 05 12 2009 61713 Stop
Bagger2 1242105816 05 12 07:05:36 05 12 2009 61715 Start
Bagger2 1242109841 05 12 08:05:41 05 12 2009 61715 Start
Bagger2 1242109965 05 12 08:05:45 05 12 2009 61713 Stop
Bagger2 1242112500 05 12 09:05:00 05 12 2009 61713 Stop
Bagger2 1242111681 05 12 09:05:21 05 12 2009 61715 Start
Das gewünschte Resultat sollte so aussehen:
Tag Montag 06.10.08
Fahrzeug: Bagger1
Pos Start Stop Saldo Decimal
1 06:12 07:12 01:00 1,00h
2 07:14 12:00 04:46 4,76h
3 13:00 17:00 04:00 4,00h
Gesamt 09:46 9,76h
Fahrzeug: Bagger2
Pos Start Stop Saldo Decimal
1 08:12 09:12 01:00 1,00h
2 09:14 14:00 04:46 4,76h
3 15:00 17:00 02:00 2,00h
Gesamt 07:46 7,76h
Wie kann ich mit MySQL (5.1) differenzen zwischen Records Start - Stop berechnen?
Wie kann ich die Summary Row je Fahrzeug berechnen, und die Ausgabe dementsprechend aufbauen?
Danke im voraus!