2015-04-06 45 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