【发布时间】:2015-06-11 05:46:56
【问题描述】:
我想从我的数据库中获取两个不同时间列之间的最小和最大差异,但我不确定我应该使用什么函数来执行此操作。我花了一些时间在网上查找并找到了一个名为 timediff 的东西,我认为它可以工作,但显然它不存在。我应该使用什么函数来执行此语句?我尝试使用 timediff,但它不起作用,但应该可以帮助任何人理解我想要做什么。
SELECT EMPLOYEEID, COUNT(ORDER_TYPE) AS TYPECOUNT,
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
以上是我之前尝试使用 timediff 方法的语句,该方法在我的程序中不起作用。此外,我正在用 java 编写这段代码并使用 jdbc 连接,因此我试图将此语句写入一个字符串,该字符串稍后作为语句传递
【问题讨论】:
-
您使用的是什么数据库?不同数据库之间的时间和日期类型和函数略有不同。
-
@jpw 它在 java 中,所以使用 jdbc 连接
-
@NickKaraolis 但是您使用的是什么数据库引擎? MySQL、Oracle、MSSQL 还是其他?
-
@jpw 我正在使用 apache derby 作为引擎