如何移除BigQuery时间戳列数据中的UTC后缀?
BigQuery移除时间戳列中的UTC标识解决方案
方法1:直接字符串替换
如果你的列是字符串类型,或仅需移除固定后缀,用REPLACE函数即可快速处理:
SELECT REPLACE(your_timestamp_column, ' UTC', '') AS cleaned_timestamp FROM your_table;
若要兼容大小写不规范的情况(比如出现" utc"),改用正则替换更严谨:
SELECT REGEXP_REPLACE(your_timestamp_column, r'\sUTC$', '') AS cleaned_timestamp FROM your_table;
方法2:时间戳解析后格式化(推荐)
如果字符串可被解析为标准时间戳,更规范的方式是先转为BigQuery原生TIMESTAMP类型,再格式化为无时区标识的字符串:
SELECT FORMAT_TIMESTAMP('%Y-%m-%d %I:%M:%S %p', PARSE_TIMESTAMP('%Y-%m-%d %I:%M:%S %p UTC', your_timestamp_column)) AS cleaned_timestamp FROM your_table;
这种方法能保证时间格式的一致性,还可按需调整输出格式,避免字符串替换可能引发的格式异常。
内容的提问来源于stack exchange,提问作者ROHIT BAJPAI
相关产品推荐
相关产品推荐

