1

假设时间以 HH:MM:SS 格式给出。我们如何在 jooq 中将此时间转换为秒。

示例 - 输入时间 - 2:10:30 出口 - 2*60*60 + 10*60 + 30 =7830 秒

4

1 回答 1

0

这适用于 MySQL 和 PostgreSQL,假设您使用的是TIME数据类型(否则,用于DSL.time()将数据转换为 SQL TIME):

with t(v) as (select time '02:10:30')
select extract(hour from v) * 3600
     + extract(minute from v) * 60
     + extract(second from v)
from t

jOOQ 版本:

hour(v).times(inline(3600))
  .plus(minute(v).times(inline(60)))
  .plus(second(v))

与往常一样,隐含以下导入:

import static org.jooq.impl.DSL.*;
于 2020-06-09T09:46:18.013 回答