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

BigQuery插入TIMESTAMP列报错:无法转换指定时间戳字符串

BigQuery TIMESTAMP插入报错的原因及解决办法

问题原因

BigQuery的TIMESTAMP类型仅支持微秒级精度(最多6位小数),你提供的时间戳"2024-07-02T10:46:58.108707769"包含9位小数(纳秒精度),超出了TIMESTAMP的精度范围,所以直接CAST会触发报错。

解决方法

方法1:截断到6位小数

通过字符串处理保留前6位小数,再转为TIMESTAMP:

-- 截取字符串前26位(刚好到微秒位)
CAST(SUBSTR("2024-07-02T10:46:58.108707769", 1, 26) AS TIMESTAMP)

-- 用正则替换截断多余小数位
CAST(REGEXP_REPLACE("2024-07-02T10:46:58.108707769", r'(\.\d{6})\d+', r'\1') AS TIMESTAMP)

方法2:用PARSE_TIMESTAMP指定解析格式

明确指定纳秒精度的解析格式,BigQuery会自动截断到微秒:

PARSE_TIMESTAMP("%Y-%m-%dT%H:%M:%E9S", "2024-07-02T10:46:58.108707769")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 17:35:56