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

如何在BigQuery标准SQL中将指定格式字符串转为Timestamp?

解决BigQuery标准SQL解析时间字符串失败的问题

问题原因

使用PARSE_TIMESTAMP报错是因为未指定与输入字符串格式完全匹配的模式。输入字符串格式为2018/03/15 14:30:00.000,需要对应正确的格式符匹配分隔符、日期时间各部分及毫秒。

正确实现方案

1. 解析为Timestamp类型

若目标是得到BigQuery的Timestamp类型(内部以UTC时间点存储),执行以下语句:

PARSE_TIMESTAMP("%Y/%m/%d %H:%M:%E3S", "2018/03/15 14:30:00.000")

格式符说明:

  • %Y:4位年份
  • %m:2位月份(01-12)
  • %d:2位日期(01-31)
  • %H:24小时制小时(00-23)
  • %M:2位分钟(00-59)
  • %E3S:带三位毫秒的秒数(如30.000)

如果输入时间本身属于UTC时区,可显式指定时区参数避免歧义:

PARSE_TIMESTAMP("%Y/%m/%d %H:%M:%E3S", "2018/03/15 14:30:00.000", "UTC")

2. 输出指定格式的字符串

若需要将解析后的Timestamp转换为2018-03-15 14:30:00 UTC格式的字符串,结合FORMAT_TIMESTAMP使用:

FORMAT_TIMESTAMP("%Y-%m-%d %H:%M:%S UTC", PARSE_TIMESTAMP("%Y/%m/%d %H:%M:%E3S", "2018/03/15 14:30:00.000"))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 03:42:14