我想寫一個廣泛的查詢,將完成以下任務;MySQL日期差異查詢
- 從「time_stamps」數據庫中選擇字段「time_stamp」和「status」,並按「time_stamp」ASC對它們進行排序。
- 在返回的字段中,對於每對時間戳(1入1出),我需要以小時爲單位獲得差異。
這是我到目前爲止在查詢中的內容。
SELECT time_stamp AS 'time', status AS 'status' FROM time_stamps WHERE user_id = '55' ORDER BY time
然後我有這個查詢從兩個日期得到的差異,以小時計。
SELECT TIMESTAMPDIFF(SECOND, '2016-04-26 07:01:26', '2016-04-26 15:07:55')/3600.0
理想情況下,我想查詢返回看起來像這樣的數據;
time_stamp status difference
2016-04-18 06:57:04 1
2016-04-18 11:19:49 0 8.11
2016-04-18 11:41:01 1
2016-04-18 15:21:02 0 3.67
2016-04-19 07:06:16 1
2016-04-19 10:58:34 0 3.87
2016-04-19 11:18:50 1
2016-04-19 15:16:00 0 3.95
2016-04-20 06:58:30 1
2016-04-20 12:46:33 0 5.80
我在想,我可能不得不編寫一個存儲過程或類似的東西來實現這一點,但我並不完全確定。有人能指引我走向何方?我不想找人爲我寫這整個查詢,只是向正確的方向推動。謝謝!
隨着一些修補程序,我讓你的代碼完美工作。感謝您的幫助Quassnoi! – Kronos1