将日期解析为雪花中的不同格式

Posted

技术标签:

【中文标题】将日期解析为雪花中的不同格式【英文标题】:Parse date to different format in snowflake 【发布时间】:2020-12-11 02:07:20 【问题描述】:

在雪花中我有以下日期格式

Thu Nov 12 00:00:00 UTC 2020

如果我想做如下:

MM-DD-YYYY HH24:MI:SS

这可以实现吗。我试过 to_date 函数似乎不起作用

https://docs.snowflake.com/en/sql-reference/functions/to_date.html

任何建议

【问题讨论】:

【参考方案1】:

我假设此数据保存在具有 TIMESTAMP 类型数据类型的列中?如果是这种情况,则将其存储为数字,其显示方式由 *_OUTPUT_FORMAT 参数控制。

如果您想以默认格式以外的任何格式显示日期/时间,则只需使用具有适当格式的 TO_CHAR,例如

select col3
, to_char(col3, 'MM-DD-YYYY HH24:MI:SS')
from casttb;

给予:

COL3                        TO_CHAR(COL3, 'MM-DD-YYYY HH24:MI:SS')
2017-01-23 20:34:52.000     01-23-2017 20:34:52
2016-10-05 00:15:53.000     10-05-2016 00:15:53
2017-01-23 08:26:27.000     01-23-2017 08:26:27
2016-10-05 10:16:47.000     10-05-2016 10:16:47

如果您的日期以文本形式保存,那么首先您需要将其转换为日期/时间 (TO_DATE),然后转换为所需格式的文本

【讨论】:

以上是关于将日期解析为雪花中的不同格式的主要内容,如果未能解决你的问题,请参考以下文章

当我在存储过程中使用相同的公式计算日期时,日期值格式不同 - 雪花

在 Java 中以不同的格式将字符串解析为日期

如何解析已使用不同语言环境格式化的日期

将 Avro 中存储为整数(自 1970 年 1 月 1 日以来的天数)的“日期”转换为雪花“日期”类型

如何在雪花中将时间戳转换为日期

将不同格式列的String数据类型的日期转换为PostgreSQL中的日期数据类型