2016-07-20 118 views
1

我想輸出一個時間間隔。
以一分鐘的時間間隔存儲。
查詢:如何以5分鐘的時間間隔輸出?(mysql)

select datetime + INTERVAL 5 MINUTE 
from ch1 
where datetime between '2016-07-12 17:26:00' and '2016-07-13 09:17:00' 

但輸出

2016-07-12 17:31:00 
2016-07-12 17:32:00 
2016-07-12 17:33:00 
2016-07-12 17:34:00 
2016-07-12 17:35:00 
2016-07-12 17:36:00 ... 

我想輸出。

2016-07-12 17:26:00 
2016-07-12 17:31:00 
2016-07-12 17:36:00 
2016-07-12 17:41:00 
2016-07-12 17:46:00 
2016-07-12 17:51:00 ... 
+0

希望您獲得與您的數據無關的輸出嗎? –

回答

1

看起來你的ch1表已經有你想要的時間戳數據。如果是這種情況,那麼你可以簡單地通過使用MINUTE()函數模量以及可供選擇,每5分鐘記錄:

SELECT datetime + INTERVAL 5 MINUTE 
FROM ch1 
WHERE datetime BETWEEN '2016-07-12 17:26:00' AND '2016-07-13 09:17:00' AND 
     MINUTE(datetime) % 5 = 0 

其實,如果你想2006-07-12 17:26:00是在結果集的第一條記錄,然後您可以抵消模數計算:

SELECT datetime + INTERVAL 5 MINUTE 
FROM ch1 
WHERE datetime BETWEEN '2016-07-12 17:26:00' AND '2016-07-13 09:17:00' AND 
     (MINUTE(datetime) - 1) % 5 = 0 
+0

謝謝你的回答。 –

+1

我解決了「SELECT FROM_UNIXTIME(CAST(UNIX_TIMESTAMP(datetime)/ 300 AS SIGNED)* 300) FROM ch1 where'2016-07-12 17:26:00'和'2016-07-13 09之間的日期時間:17:00'GROUP BY 1' –

+0

@ C.Seon,那麼你應該添加這個答案,並標記你自己是正確的,因爲這個答案完全解決了另一個問題。 –

相關問題