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

如何在Snowflake中将2007-10-01T01:02:03.004转换为datetime类型

在Snowflake中转换带T的时间值为Datetime类型

直接转换(推荐)

你的输入字符串2007-10-01T01:02:03.004是标准ISO 8601格式,Snowflake的TO_DATETIME或TO_TIMESTAMP函数可以直接识别,无需指定自定义格式符:

SELECT TO_DATETIME('2007-10-01T01:02:03.004') AS converted_datetime;

按指定格式解析输入

如果需要明确指定解析格式,要匹配输入字符串里的T分隔符和毫秒部分,格式符应为yyyy-mm-dd"T"hh24:mi:ss.fff:

SELECT TO_DATETIME('2007-10-01T01:02:03.004', 'yyyy-mm-dd"T"hh24:mi:ss.fff') AS converted_datetime;

输出指定格式的字符串

如果要将转换后的datetime类型值输出为你给出的2022-11-03 09:13:48.000格式(带空格分隔和三位毫秒),可以用TO_VARCHAR配合对应格式符:

SELECT TO_VARCHAR(TO_DATETIME('2007-10-01T01:02:03.004'), 'yyyy-mm-dd hh24:mi:ss.fff') AS formatted_datetime;

注意点

你之前使用的yyyymmddhh24miss格式符适用于无分隔符的紧凑日期时间字符串(如20071001010203),和你的输入格式不匹配,所以无法正确解析。

内容的提问来源于stack exchange,提问作者Md Shahnawaz Alam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 19:50:22