本文主要介紹了SQL計算timestamp的差值的方法的相關資料,需要的朋友可以參考下,希望能幫助到大家。
SQL計算timestamp的差值的方法
概述
有時候我們需要按照時間找出某些記錄,比如說:算出離銷售時間前1小時的紀錄。
通常我們可以使用MYSQL的timestampdiff函數來做,但是這樣沒法使用到索引,如果資料量大的話,會造成慢查詢。
用程式碼計算時間後再傳給SQL
我們可以利用JAVA程式碼,先把時間計算好,然後傳給SQL語句,避免使用MYSQL的函數。
public long xxxx(long sellTimeFrom){ Calendar calendar = Calendar.getInstance(); calendar.setTime(new Date(sellTimeFrom)); calendar.set(Calendar.HOUR_OF_DAY,calendar.get(Calendar.HOUR_OF_DAY) - 1); return calendar.getTime().getTime(); }
這樣就可以算出銷售時間前一個小時的時間。然後傳入SQL這裡寫程式碼片`語句中,這樣如果銷售時間欄位有建立索引,是可以用上索引的。
相關推薦:
Mysql儲存時間欄位用int、timestamp還是datetime?
以上是SQL計算timestamp的差值實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!