hive時間日期函式及典型場景應用

2022-07-07 00:48:10 字數 1509 閱讀 3340

1.1) 取得當前日期:

select current_date();

1.3) hive取得當前時間戳:

select unix_timestamp();

1.4) 時間戳轉日期:

select from_unixtime(1517725479,'yyyy-mm-dd hh:dd:ss');

1.5) 日期轉unix時間戳:

select to_nuix_timestamp('2017-01-01 12:12:12','yyyy-mm-dd hh:dd:ss');

2、hive自動計算其他日期(昨天,今天):

hive中日期加減函式:date_add(start_date,num_days)

2.1) 取得昨天日期:

select date_add(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),-1);

select date_sub(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),1);

2.2) 取得明天日期:

select date_add(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),1);

select date_sub(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),-1);

3、hive取得兩個日期之間差值(差值為天數):

datediff(date1,date2):date1大於date2,返回值為正,否則,返回值為負。

select datediff(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),date_add(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),-10));

select datediff(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),date_add(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),10));

4、字串轉時間(字串必須為:yyyy-mm-dd格式)

select to_date('2017-01-01 12:12:12');

5、日期、時間戳、字串型別格式化輸出標準時間格式:

select date_format(current_timestamp(),'yyyy-mm-dd hh:mm:ss');

select date_format(current_date(),'yyyymmdd');

select date_format('2017-01-01','yyyy-mm-dd hh:mm:ss');       --字串必須滿足yyyy-mm-dd格式

6、utc時間轉換:

select from_utc_timestamp(current_timestamp(),8);

select to_utc_timestamp(current_timestamp(),8);

hive時間日期函式及典型場景應用

1.1 取得當前日期 select current date 1.3 hive取得當前時間戳 select unix timestamp 1.4 時間戳轉日期 select from unixtime 1517725479,yyyy mm dd hh dd ss 1.5 日期轉unix時間戳 sel...

hive中時間日期函式的使用

本文提供乙個hive中時間函式表 函式作用 示例輸出 to date 日期時間轉日期函式 select to date 2015 04 02 13 34 12 2015 04 02 from unixtime 轉化unix時間戳到當前時區的時間格式 select from unixtime 1323...

hive中時間 日期函式的用法

current date 獲取當前日期 用法 select current date 輸出 2020 12 04 unix timestamp 獲取當前unix時間戳 用法 select unix timestamp 輸出 1607070544 date add 返回日期的後n天的日期 例 返回當前...