一、Hive日期加減函數
在Hive中,可以使用日期加減函數將日期進行加減運算。
SELECT date_sub('2020-06-01', 1); -- 結果為 '2020-05-31' SELECT date_add('2020-06-01', 3); -- 結果為 '2020-06-04'
Hive中的date_sub函數可以從指定日期中減去指定的天數,date_add函數可以將指定數量的天數加到指定日期中。
二、Hive日期加3天
如果我們想在Hive中對日期進行加3天的操作,可以使用上述的date_add函數:
SELECT date_add('2020-06-01', 3); -- 結果為 '2020-06-04'
三、Hive日期加減計算
Hive日期加減計算的基本語法如下:
date_sub(string startdate, int days); date_add(string startdate, int days);
其中,startdate為要進行加減的起始日期,days為要加減的天數。
四、Hive日期加一天
如果我們要在Hive中對日期進行加一天的操作,可以使用date_add函數:
SELECT date_add('2020-06-01', 1); -- 結果為 '2020-06-02'
五、Hive日期加減天數
如果我們要在Hive中對日期進行加減運算,可以使用date_add和date_sub函數:
SELECT date_add('2020-06-01', 7); -- 結果為 '2020-06-08' SELECT date_sub('2020-06-01', 7); -- 結果為 '2020-05-25'
這樣,我們就可以對日期進行加減計算了。
六、Hive日期加減月份
除了對天數進行加減計算,我們也可以對月份進行加減計算。Hive中的語法如下:
add_months(string startdate, int months);
其中,startdate為要進行加減的起始日期,months為要加減的月數。
SELECT add_months('2020-06-01', 2); -- 結果為 '2020-08-01'
七、Hive日期加減函數pad_date
在Hive中,還有一個日期加減函數pad_date。不同於date_add和date_sub函數需要傳入具體的天數,pad_date需要傳入要加減的時間間隔以及時間部分格式化的字符串。具體語法如下:
pad_date(string timestamp, int days, string fmt);
其中,timestamp為要進行加減操作的時間,days為要加減的時間間隔,fmt為時間部分格式化的字符串。
SELECT pad_date('2020-06-01 12:00:00', 2, 'HH'); -- 結果為 '14'
八、Hive日期加減函數返回字符串
如果我們只需要日期的字符串形式而不需要日期類型的結果,可以使用to_date函數將結果轉換為字符串形式。例如:
SELECT to_date(date_add('2020-06-01', 3)); -- 結果為 '2020-06-04'
九、Hive日期格式轉換
在Hive中,我們還可以使用from_unixtime函數將Unix時間戳轉換為日期格式,或使用unix_timestamp函數將日期格式轉換為Unix時間戳。例如:
SELECT from_unixtime(1591017600); -- 結果為 '2020-06-02 00:00:00' SELECT unix_timestamp('2020-06-01', 'yyyy-MM-dd'); -- 結果為 1590969600
以上就是Hive日期加減的相關教程。通過本教程的學習,相信大家已經掌握了Hive中日期加減的基本語法和使用技巧。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/239637.html