gpt4 book ai didi

sql - 在 Bigquery 中将秒转换为天、小时、分钟

转载 作者:行者123 更新时间:2023-12-05 01:10:07 25 4
gpt4 key购买 nike

我在 Bigquery 中转换秒时遇到问题,是否有任何函数可以在 Bigquery 中将秒转换为小时:分钟:秒格式?我已经尝试过 TIMESTAMP_SECONDS() 函数,但它也会返回一些日期,如果小时超过 23,我将无法使用它。例如:

秒= 100000

结果= 27:46:40

或者可能是 1 天 3 小时 46 分 40 秒

而且我还希望它采用时间戳数据类型,因此我可以对其进行升序或降序排序。

最佳答案

以下是 BigQuery 标准 SQL

#standardSQL
select seconds,
regexp_replace(
cast(time(ts) as string),
r'^\d\d',
cast(extract(hour from time(ts)) + 24 * unix_date(date(ts)) as string)
) as option1,
format(
'%i day %i hour %i minute %i second',
unix_date(date(ts)),
extract(hour from time(ts)),
extract(minute from time(ts)),
extract(second from time(ts))
) as option2
from `project.dataset.table`,
unnest([timestamp_seconds(seconds)]) ts

如果应用到您的问题中的样本数据,如

with `project.dataset.table` AS (
select 100000 seconds union all
select 200000 union all
select 300000
)

输出是

enter image description here

关于sql - 在 Bigquery 中将秒转换为天、小时、分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64517069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com