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

如何在Amazon Redshift中将字符串格式时间转换为Timestamp?

在Amazon Redshift中将字符串时间戳转换为Timestamp格式

Redshift可以通过TO_TIMESTAMP函数直接处理这种连写格式的字符串时间戳,你的字符串属于YYYYMMDDHH24MISS(年-月-日-时-分-秒连续拼接)格式,对应格式模型为'YYYYMMDDHH24MISS',具体操作如下:

1. 查询时临时转换

如果仅需要在查询结果中得到标准Timestamp格式,执行以下SQL即可:

SELECT TO_TIMESTAMP('20220725115427', 'YYYYMMDDHH24MISS') AS converted_timestamp;

执行后会返回标准格式的时间戳:2022-07-25 11:54:27

2. 永久修改表结构

如果要将表中存储的字符串列替换为Timestamp类型,按以下步骤操作:

  • 给目标表添加一个新的Timestamp类型列:
ALTER TABLE your_marketing_table ADD COLUMN standardized_timestamp TIMESTAMP;
  • 将原字符串列的数据转换后写入新列:
UPDATE your_marketing_table 
SET standardized_timestamp = TO_TIMESTAMP(your_string_timestamp_col, 'YYYYMMDDHH24MISS');
  • (可选)若无需保留原字符串列,可删除旧列并重命名新列:
ALTER TABLE your_marketing_table DROP COLUMN your_string_timestamp_col;
ALTER TABLE your_marketing_table RENAME COLUMN standardized_timestamp TO your_string_timestamp_col;

处理无效数据

如果字符串列存在格式错误的无效值,TO_TIMESTAMP会直接报错,此时可以用TRY_TO_TIMESTAMP函数替代,它会返回NULL而非抛出错误:

SELECT TRY_TO_TIMESTAMP('invalid_timestamp_string', 'YYYYMMDDHH24MISS') AS converted_timestamp;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 01:36:58