Snowflake cloud data platform 雪花日期\u trunc从日期中删除时间

Snowflake cloud data platform 雪花日期\u trunc从日期中删除时间,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,我有雪花列,其中包含yyyy-mm-dd hh:mm:ss格式的日期 我使用下面的函数 date_trunc('DAY', '2019-09-23 12:33:25') 输出:2019-09-23 00:00:00 预计根据:2019-09-23 这是一个错误还是有其他方法可以完全删除时间部分?根据您对日期的处理方式,有一个午夜时间是可以的 如果你真的必须摆脱它,这将起作用: cast(date_trunc('DAY', '2019-09-23 12:33:25') as date) 取决

我有雪花列,其中包含yyyy-mm-dd hh:mm:ss格式的日期

我使用下面的函数

 date_trunc('DAY', '2019-09-23 12:33:25')
输出:
2019-09-23 00:00:00

预计根据:
2019-09-23


这是一个错误还是有其他方法可以完全删除时间部分?

根据您对日期的处理方式,有一个午夜时间是可以的

如果你真的必须摆脱它,这将起作用:

cast(date_trunc('DAY', '2019-09-23 12:33:25') as date)

取决于你想对约会做什么,有一个午夜时间是可以的

如果你真的必须摆脱它,这将起作用:

cast(date_trunc('DAY', '2019-09-23 12:33:25') as date)

如文档所述,date_trunc将时间戳截断为不同粒度上的值。但是结果仍然是一个时间戳,因此是输出格式


如果您只想要被截断的日期,那么按照cmcau提到的方式转换为
date
,是一种简单的方法。但是,如果您要强制转换到日期,则无需截断,因为它们是相同的值,因此您只需使用日期

date\u trunc正如文档所说,将时间戳截断为不同粒度上的值。但是结果仍然是一个时间戳,因此是输出格式


如果您只想要被截断的日期,那么按照cmcau提到的方式转换为
date
,是一种简单的方法。但是,如果您要强制转换到日期,则无需截断,因为它们是相同的值,因此您只需使用日期

在某些环境(如模式分析)中,如其他一些答案所述,到目前为止,在最后仍然显示
00:00:00
。如果是这种情况,并且您仅将日期用于显示目的,则可以将截断的日期转换为
varchar
,而不是像这样:
'2019-09-23 12:33:25'::date::varchar


请注意,我仅在其他答案不适用于您的情况下才建议您这样做。

在某些环境中,如模式分析,如其他答案中提到的一些,到目前为止,强制转换仍然会在结尾显示一个
00:00
。如果是这种情况,并且您仅将日期用于显示目的,则可以将截断的日期转换为
varchar
,而不是像这样:
'2019-09-23 12:33:25'::date::varchar


请注意,只有在其他答案对您无效时,我才建议您使用此选项。

'2019-09-23 12:33:25'::date给出相同的结果,但当您选择日期时,不需要截断。这就像执行CAST(将(3.14)四舍五入为整数)'2019-09-23 12:33:25'::date给出相同的结果,但是shortern在强制转换为日期时不需要截断。这就像执行强制转换(将(3.14)四舍五入为整数)