将字符串格式的日期转换为日期数据类型

Convert date in string format to date data type

我想将字符串格式“mmddyy”(120618) 的日期转换为日期,并在 Athena table 中找到日期的最大值。如何编写此 sql 查询?

你不能只使用 ORDER BY 加上 ASC | 来输出你的日期吗? DESC(取决于你所说的 "max of date" 是什么意思),命令并只使用你得到的第一个输出?通过使用 LIMIT?

您可以使用date_parse()将字符串转换为日期:

select date_parse('120618', '%c%d%y')

因此,您可以这样使用它:

SELECT
  MAX(date_parse(date_field, '%c%d%y')) as dt
FROM table

参见:Date and Time Functions and Operators — Presto Documentation

顺便说一句,您应该告诉制作原始数据格式的人,这是一种糟糕的日期存储方式。 ISO格式更好(例如2018-12-06)。