明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

解析SQL計(jì)算timestamp的差值的方法

[摘要]這篇文章主要介紹了SQL計(jì)算timestamp的差值的方法的相關(guān)資料,需要的朋友可以參考下SQL計(jì)算timestamp的差值的方法概述有時(shí)候我們需要按照時(shí)間找出某些記錄,比如說:算出離銷售時(shí)間前1個(gè)小時(shí)的記錄。 通常我們可以使用MYSQL的timestampdiff函數(shù)來做,但是這樣沒法使用到索引...
這篇文章主要介紹了SQL計(jì)算timestamp的差值的方法的相關(guān)資料,需要的朋友可以參考下

SQL計(jì)算timestamp的差值的方法

概述

有時(shí)候我們需要按照時(shí)間找出某些記錄,比如說:算出離銷售時(shí)間前1個(gè)小時(shí)的記錄。
通常我們可以使用MYSQL的timestampdiff函數(shù)來做,但是這樣沒法使用到索引,如果數(shù)據(jù)量大的話,會造成慢查詢。

用代碼計(jì)算出時(shí)間后再傳給SQL

我們可以利用JAVA代碼,先把時(shí)間計(jì)算好,然后傳給SQL語句,避免使用MYSQL的函數(shù)。

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();
}

這樣就可以算出銷售時(shí)間前一個(gè)小時(shí)的時(shí)間。然后傳入SQL這里寫代碼片`語句中,這樣如果銷售時(shí)間字段有建立索引,是可以用上索引的。

以上就是解析SQL計(jì)算timestamp的差值的方法的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識。