Impala-如何比较日期时间类型“ mm dd yy 00:00 AM”

时间:2018-11-29 10:19:11

标签: sql impala

在Impala中,当我尝试比较日期时,它将给出错误的结果。 例如:

select 'Nov 23 2018  3:02AM' > 'Dec  1 2018 12:00AM'

这将返回True

使用cast()函数select cast('Dec 1 2018 12:00AM' as timestamp)时会给出null。 因此,我们如何比较格式为mm dd yy 00:00AM

的日期

2 个答案:

答案 0 :(得分:0)

您应该使用Impala implicit formating yyyy-MM-dd HH:mm:ss.SSS。在您的情况下,您应该使用

select cast('2018-11-23 03:02:00.000' as timestamp)

答案 1 :(得分:0)

您可以使用unix_timestamp()。我认为正确的格式是:

select unix_timestamp('Nov 23 2018  3:02AM', 'MMM DD YYYY HH:mmPP')