2015-04-06 31 views
0

我想在java中使用timediff函數來比較表中的兩個sql日期對象的sql語句。這就是我的發言的樣子:JDBC中的TimeDiff函數sql

SELECT EMPLOYEEID, COUNT(ORDER_TYPE) AS BREAKFASTCOUNT, MIN(TIMEDIFF(ORDER_ACCEPTED_TIME,ORDER_COMPLETION_TIME)) AS MINPREP, MAX(TIMEDIFF(ORDER_ACCEPTED_TIME, ORDER_COMPLETION_TIME)) AS MAXPREP FROM ORDERS WHERE ORDERDATE BETWEEN '4/01/2015' AND '4/30/2015' AND ORDER_TYPE ='Breakfast' GROUP BY EMPLOYEEID 

然而,當我運行此聲明我得到的錯誤:

java.sql.SQLSyntaxErrorException: 'TIMEDIFF' is not recognized as a function or procedure. 

有爲什麼這個錯誤發生的原因嗎?

+1

從來沒有聽說過SQL服務器中的TIMEDIFF函數,所以有谷歌。 –

回答

0

我希望這是您正在查找的查詢。這以分鐘顯示時間差異。

SELECT 
    EMPLOYEEID, 
    COUNT(ORDER_TYPE) AS BREAKFASTCOUNT, 
    MIN(dateDIFF(MINUTE,ORDER_ACCEPTED_TIME,ORDER_COMPLETION_TIME)) AS MINPREP, 
    MAX(dateDIFF(MINUTE,ORDER_ACCEPTED_TIME, ORDER_COMPLETION_TIME)) AS MAXPREP 
FROM ORDERS 
WHERE ORDERDATE BETWEEN '4/01/2015' AND '4/30/2015' 
AND ORDER_TYPE ='Breakfast' 
GROUP BY EMPLOYEEID