Presto(AWS Athena)中 datefromparts 的替代方法是啥
Posted
技术标签:
【中文标题】Presto(AWS Athena)中 datefromparts 的替代方法是啥【英文标题】:What is the alternative of datefromparts in Presto (AWS Athena)Presto(AWS Athena)中 datefromparts 的替代方法是什么 【发布时间】:2020-08-25 23:57:31 【问题描述】:AWS Athena (Presto DB) 中 datefromparts SQL 函数的最佳性能替代方案是什么?
用例是:
我有日期部分(即日、月和年),需要这些部分的日期。
【问题讨论】:
【参考方案1】:您通常会使用带有正确格式说明符的parse_date()
。如果你的日期是 ISO 格式,你可以直接使用from_iso_date()
(或from_iso_timestamp()
)。
另一方面,如果需要提取日期部分,可以使用extract()
,如:
extract(hour from current_timestamp)
请注意,Presto 还提供了与可能的提取部分相对应的全系列短函数名称:year()
、quarter()
、month()
、...
【讨论】:
非常感谢您的快速响应,我正在寻找相反的功能,我想从它的各个部分获取日期,例如,我有日期、月份和年份,并且需要日期从那以后,我想到的一个选择是将这些部分放入一个字符串中并解析回来,这似乎非常违反直觉。 @Sakher:我认为这是要走的路......我更新了我的答案。 谢谢老兄,真的很感激!以上是关于Presto(AWS Athena)中 datefromparts 的替代方法是啥的主要内容,如果未能解决你的问题,请参考以下文章
AWS Athena (Presto) DISTINCT SQL 查询中的重复结果?
AWS Athena (Presto) - 如何将时间戳格式化为日期格式?
AWS Athena [Presto] 如何仅接收过去 7 天的数据?
删除 Presto SQL 兼容数据库 (AWS Athena) 中数据中的双引号?