【问题标题】:Convert HH:MM:S to seconds int将 HH:MM:S 转换为秒 int
【发布时间】:2019-07-05 04:53:53
【问题描述】:

我有两列格式为 YYYY-MM-DD HH:MM:SS 当我对这两列进行区分时,我的结果格式为 HH:MM:SS

我想将此结果转换为秒。我怎样才能做到?

例子:

2019-06-15 19:27:33.045000 | 2019-06-15 19:27:22.298000 | 00:00:10.747

【问题讨论】:

  • 在 Postgres 中,您可以使用 to_char(timestamp '2019-06-15 20:27:33.045000' - timestamp '2019-06-15 19:17:22.298000', 'hh24:mi:ss') - 这在 Redshift 中也可以使用吗?

标签: sql amazon-redshift datetime-conversion


【解决方案1】:

您可以使用DATEDIFF ( datepart, {date|timestamp}, {date|timestamp} ) 功能获取更多信息check here

例如

 select datediff(second, '0','05:15:40');

【讨论】:

  • 检查 Datediff 在红移中是否可用?如果是,那么尝试这样 SELECT DATEDIFF(SECOND,0,'20:10:10')
【解决方案2】:

你可以试试这个:

Declare @time varchar(50)= '05:15:40'
select Sum(Left(@time,2) * 3600 + substring(@time, 4,2) * 60 + substring(@time, 7,2)) 
as seconds

Declare @time varchar(50)= '05:15:40'
SELECT seconds = DATEPART(SECOND, @time) +  60 * DATEPART(MINUTE, @time) + 
3600 * DATEPART(HOUR, @time)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-18
    • 2015-08-30
    • 1970-01-01
    • 2020-07-03
    • 2012-01-07
    相关资源
    最近更新 更多