CREATE TABLE Table1
(`ID` int, `FullDateTime` date, `Flag` int)
;
INSERT INTO Table1
(`ID`, `FullDateTime`, `Flag`)
VALUES
(88, '2015-02-26 04:30:00', 0),
(22, '2015-02-26 04:00:00', 0),
(45, '2015-02-26 03:30:00', 1),
(25, '2015-02-26 03:00:00', 1),
(11, '2015-02-26 02:30:00', 1),
(57, '2015-02-26 02:00:00', 1),
(15, '2015-02-26 01:30:00', 0),
(36, '2015-02-26 01:00:00', 0),
(00, '2015-02-26 00:30:00', 0),
(47, '2015-02-26 00:00:00', 1),
(56, '2015-02-25 23:30:00', 1),
(66, '2015-02-25 23:00:00', 1),
(27, '2015-02-25 22:30:00', 1),
(55, '2015-02-25 22:00:00', 1)
;
select ( count(*) * 30.0 ) / 60.0
from table1 as e
left join table1 as s on
time(e.
FullDateTime, '-30 MINUTE') = time(s.
FullDateTime)where s.flag = 1 and e.flag = 1
;
IAogCkNSRUFURSBUQUJMRSBUYWJsZTEKCShgSURgIGludCwgYEZ1bGxEYXRlVGltZWAgZGF0ZSwgYEZsYWdgIGludCkKOwogCklOU0VSVCBJTlRPIFRhYmxlMQoJKGBJRGAsIGBGdWxsRGF0ZVRpbWVgLCBgRmxhZ2ApClZBTFVFUwoJKDg4LCAnMjAxNS0wMi0yNiAwNDozMDowMCcsIDApLAoJKDIyLCAnMjAxNS0wMi0yNiAwNDowMDowMCcsIDApLAoJKDQ1LCAnMjAxNS0wMi0yNiAwMzozMDowMCcsIDEpLAoJKDI1LCAnMjAxNS0wMi0yNiAwMzowMDowMCcsIDEpLAoJKDExLCAnMjAxNS0wMi0yNiAwMjozMDowMCcsIDEpLAoJKDU3LCAnMjAxNS0wMi0yNiAwMjowMDowMCcsIDEpLAoJKDE1LCAnMjAxNS0wMi0yNiAwMTozMDowMCcsIDApLAoJKDM2LCAnMjAxNS0wMi0yNiAwMTowMDowMCcsIDApLAoJKDAwLCAnMjAxNS0wMi0yNiAwMDozMDowMCcsIDApLAoJKDQ3LCAnMjAxNS0wMi0yNiAwMDowMDowMCcsIDEpLAoJKDU2LCAnMjAxNS0wMi0yNSAyMzozMDowMCcsIDEpLAoJKDY2LCAnMjAxNS0wMi0yNSAyMzowMDowMCcsIDEpLAoJKDI3LCAnMjAxNS0wMi0yNSAyMjozMDowMCcsIDEpLAoJKDU1LCAnMjAxNS0wMi0yNSAyMjowMDowMCcsIDEpCjsKIApzZWxlY3QgKCBjb3VudCgqKSAqIDMwLjAgKSAvIDYwLjAKZnJvbSB0YWJsZTEgYXMgZQpsZWZ0IGpvaW4gdGFibGUxIGFzIHMgb24gdGltZShlLkZ1bGxEYXRlVGltZSwgJy0zMCBNSU5VVEUnKSA9IHRpbWUocy5GdWxsRGF0ZVRpbWUpCndoZXJlIHMuZmxhZyA9IDEgYW5kIGUuZmxhZyA9IDEKOwogCiA=