You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Teradata转GCP BigQuery:DAY() TO SECOND函数转换咨询

Teradata DAY() TO SECOND 转BigQuery SQL实现方案

原Teradata语句的作用是计算run_end_dttm与run_start_dttm的时间间隔(精度到秒),再求所有间隔的平均值作为elapsed_time。

标准转换写法

直接使用BigQuery的TIMESTAMP_DIFF函数计算秒级差求平均后转时间间隔,和原逻辑完全对齐:

AVG(TIMESTAMP_DIFF(run_end_dttm, run_start_dttm, SECOND)) * INTERVAL 1 SECOND AS elapsed_time,

可选:输出人类可读格式

如果需要返回天 时:分:秒的可读字符串,可以使用如下写法:

CONCAT(
  DIV(CAST(AVG(TIMESTAMP_DIFF(run_end_dttm, run_start_dttm, SECOND)) AS INT64), 86400), ' ',
  FORMAT_TIMESTAMP("%H:%M:%S", TIMESTAMP_SECONDS(MOD(CAST(AVG(TIMESTAMP_DIFF(run_end_dttm, run_start_dttm, SECOND)) AS INT64), 86400)))
) AS elapsed_time_readable,

注意事项

  • 若字段类型为DATETIME而非TIMESTAMP,将TIMESTAMP_DIFF替换为DATETIME_DIFF即可
  • 该写法无最大天数限制,完全覆盖原Teradata中DAY(4)最多支持9999天间隔的精度要求

内容的提问来源于stack exchange,提问作者Zuffido

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 20:06:03