2016-05-12 66 views
0

我試圖做一個查詢,我將獲得分別插在最後10秒的成績:從當前時間戳我的查詢中如何減秒

SELECT * 
FROM table 
where client_id = 1 
and hash = 'x' 
and insert_time >= current_timestamp - **10 seconds** 

我一直在尋找如何減距離當前時間戳10秒,但直到現在我還沒有結束......

你能幫我減去它嗎?

回答

0

你想要的:

insert_time >= DATE_SUB(current_timestamp, INTERVAL 10 SECOND) 
0

由於reference你應該使用SUBTIME

... 
    and insert_time >= SUBTIME(current_timestamp,'0 0:0:10.000000'); 

或者您可以使用INTERVAL如下:

... 
    and insert_time >= SUBTIME(current_timestamp, INTERVAL 10 SECOND); 

注意,由於reference

當與第二個參數的INTERVAL形式調用,SUBDATE()是用於DATE_SUB()的同義詞。

1

試試這個

TIME_TO_SEC(TIMEDIFF(current_timestamp, insert_time)) > 10; 
+0

雖然這可能是邏輯正確,這是一個糟糕的選擇,因爲計算必須做的每一行,這將是緩慢的。最好每個查詢計算一次常量值,然後將每行進行比較。 – Bohemian

相關問題