Snowflake中的SQL将日期从106(13-APR-2020)更改为105(13-04-2020)

时间:2020-07-09 17:00:12

标签: sql snowflake-cloud-data-platform to-date

因此,我在表中有几个日期字段,其格式为(DD-MON-YYYY),我需要将它们转换为(DD-MM-YYYY),该字段本身已经是VARCHAR。在Snowflake中,我将如何进行更改。这是我到目前为止所做的。

select to_date(end_date, 'dd-mm-yyyy') from

error: Can't parse '31-JAN-2020' as date with format 'dd-mm-yyyy'

2 个答案:

答案 0 :(得分:2)

一种简单的方法是将字符串转换为日期,然后再转换为新格式的字符串,示例如下:

const myModule = "example exported value";

export default myModule;

我希望这可以帮助...丰富

答案 1 :(得分:1)

to_date()函数使您能够将VARCHAR字段转换为DATE字段,而无需指定日期格式。因此,您需要运行以下命令:

SELECT TO_DATE(end_date, 'DD-MON-YYYY');

这会将日期输出为日期。如果要指定日期的显示方式,则有2种选择:

首先,将其转换为您首选格式的VARCHAR:

SELECT TO_VARCHAR(TO_DATE(end_date, 'DD-MON-YYYY'),'DD-MM-YYYY');

第二,将会话参数DATE_OUTPUT_FORMAT更改为您想要查看显示日期的格式:

ALTER SESSION SET DATE_OUTPUT_FORMAT = 'DD-MM-YYYY';

这也可以为用户完成,而不是使用以下会话:

ALTER USER SET DATE_OUTPUT_FORMAT = 'DD-MM-YYYY';