2
我正在使用MySQL存儲某些事件,其中包含有關誰已完成此事件的信息 以及某個事件發生時的時間戳。我現在將這些信息存儲在兩張表格中,「Cycles」和「Movement_Load」。基於列中的時間戳的交集,將一個MySQL表的信息追加到另一個列表中
現在我想將「Movement_Load」中包含的信息附加到表格「Cycles」中。這個操作的好處是我將所有相關信息存儲在一張表中。
表循環:
(1, '00:50:c2:63:10:1a', 1351508100, 1351508200, 'center', 0, 0);
表Movement_Load:
(1, 'move_sensor1', 1351508090, 'movement start'),
(2, 'move_sensor1', 1351508120, 'movement end'), -- 20 not 30, because it starts at 1351508100
(3, 'move_sensor1', 1351508140, 'movement start'),
(4, 'move_sensor1', 1351508170, 'movement end'), -- 30
(5, 'move_sensor1', 1351508190, 'movement start'),
(6, 'move_sensor1', 1351508210, 'movement end'), -- 10 not 20, because it ends at 1351508200
-- movement sum is 60
(7,'load_sensor1', 1351508130, 'load start'),
(8,'load_sensor1', 1351508180, 'load end'), -- 50
(9,'load_sensor1', 1351508185, 'load start'),
(10,'load_sensor1', 1351508220, 'load end') -- 15 not 35, because it ends at 1351508200
-- load sum is 65
結果應該是這樣的,運動(60)和負載(65)現在存儲在該表中:
(1, '00:50:c2:63:10:1a', 1351508100, 1351508200, 'center', 60, 65)
要解決此問題,請參閱我準備好的小提琴:http://sqlfiddle.com/#!2/b1113
感謝CL,你是最好的,它似乎工作!你能告訴我,這個查詢是如何工作的嗎?我如何學會自己創建這樣的查詢? – 2013-03-10 12:36:21
嘿CL,這個有一個後續問題:http://stackoverflow.com/questions/15406149/mysql-overlaps-of-two-tables-in-timestamps – 2013-03-14 20:12:43