将日期字符串转换为日期时间戳

问题描述 投票:0回答:1

我的表中有此字段,其中包含此格式的日期时间戳(例如“2023_11_20_23_18_03”)。

我正在尝试找到一种方法将此字符串字段转换为格式为('YYYY/MM/DD HH:MM:ss')的日期字段。除了使用“LEFT”/“RIGHT”函数之外,我似乎找不到解析该字段以创建这种新格式的好方法。

我试图让字段显示为“2023/12/31 21:18:03”

enter image description here

sql snowflake-cloud-data-platform date-formatting
1个回答
2
投票

用于 Snowflake 使用 TRY_TO_TIMESTAMP,

select $1 as str
    ,try_to_timestamp_ntz($1, 'yyyy_mm_dd_hh24_mi_ss') as ts
from values
('2023_12_20_23_18_03'),
('2023_11_01_10_18_03');
STR TS
2023_12_20_23_18_03 2023-12-20 23:18:03.000
2023_11_01_10_18_03 2023-11-01 10:18:03.000
© www.soinside.com 2019 - 2024. All rights reserved.