Snowflake cloud data platform 雪花日期\u trunc从日期中删除时间
我有雪花列,其中包含yyyy-mm-dd hh:mm:ss格式的日期 我使用下面的函数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) 取决
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)四舍五入为整数)