我有一个带有代表上次活动的 Date 对象的实体。我想查询平均空闲时间。所以在 SQL 中类似:
SELECT AVG(NOW() - idle_date) FROM mytable WHERE ....
Run Code Online (Sandbox Code Playgroud)
我尝试这样计算差异:
query.singleResult(
Expressions.dateOperation(
Long.class,
Ops.DateTimeOps.DIFF_SECONDS,
DateExpression.currentDate(),
myTable.idleDate
)
);
Run Code Online (Sandbox Code Playgroud)
但这不允许我对结果求平均值,只能对最小值和最大值求平均值。
如何用日期/时间差(以秒为单位)表达该平均值?
我相信你可以使用一个NumberTemplate对象;沿着这些思路的东西应该可以满足您的需要:NumberTemplate.create(Double.class, "AVG(NOW() - {0})", myTable.idleDate);
| 归档时间: |
|
| 查看次数: |
2828 次 |
| 最近记录: |