presto計算日期間隔天數或者小時間隔——date_diff函數使用


“Presto是Facebook最新研發的數據查詢引擎,可對250PB以上的數據進行快速地交互式分析。據稱該引擎的性能是 Hive 的 10 倍以上。”,親身用過之后,覺得比hive快了10倍不止。

hive中查詢日期間隔的函數是datediff:

select datediff('2018-09-07','2018-09-05');


結果是2。

presto中我們需要達到相同的目的,函數是date_diff,而且寫法稍有不同:

select date_diff('day',cast('2018-09-05' as date),cast('2018-09-07' as date));

 

結果也是2。

date_diff函數:

1)需要提供參數'day',表示要查詢的是天數間隔;要查詢小時,則提供參數'hour'

2)並且后面傳參限制為date類型;

3)最后要注意是后面減去前面。

這三點是與hive的datediff函數的不同點。
---------------------

presto 日期做差的轉換,這樣試試看

select date_diff('day',cast(first_order_date as date),cast(last_order_date as date));

后面的值減去前面的值, 



原文鏈接:https://blog.csdn.net/chenkfkevin/article/details/82884506


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM