to_date:日期時間轉日期函式
select to_date('2015-04-02 13:34:12');
輸出:2015-04-02
from_unixtime:轉化unix時間戳到當前時區的時間格式select from_unixtime(1323308943,』yyyymmdd』);
輸出:20111208
unix_timestamp:獲取當前unix時間戳select unix_timestamp();
輸出:1430816254
select unix_timestamp('2015-04-30 13:51:20');
輸出:1430373080
year:返回日期中的年select year('2015-04-02 11:32:12');
輸出:2015
month:返回日期中的月份select month('2015-12-02 11:32:12');
輸出:12
day:返回日期中的天select day('2015-04-13 11:32:12');
輸出:13
hour:返回日期中的小時select hour('2015-04-13 11:32:12');
輸出:11
minute:返回日期中的分鐘select minute('2015-04-13 11:32:12');
輸出:32
second:返回日期中的秒select second('2015-04-13 11:32:56');
輸出:56
weekofyear:返回日期在當前週數select weekofyear('2015-05-05 12:11:1');
輸出:19
datediff:返回開始日期減去結束日期的天數select datediff('2015-04-09','2015-04-01');
輸出:8
date_sub:返回日期前n天的日期select date_sub('2015-04-09',4);
輸出:2015-04-05
date_add:返回日期後n天的日期select date_add('2015-04-09',4);
輸出:2015-04-13
from_unixtime+ unix_timestamp hive中yyyymmdd和yyyy-mm-dd日期之間的切換思想:先轉換成時間戳,再由時間戳轉換為對應格式。
--20171205轉成2017-12-05
select from_unixtime(unix_timestamp('20171205','yyyymmdd'),'yyyy-mm-dd') from dual;
--2017-12-05轉成20171205
select from_unixtime(unix_timestamp('2017-12-05','yyyy-mm-dd'),'yyyymmdd') from dual;
hive中取最近30天資料datediff(current_timestamp ,gmt_create)<=30
hive中 兩個日期相差多少小時select (unix_timestamp('2018-05-25 12:03:55') - unix_timestamp('2018-05-25 11:03:55'))/3600
輸出:1
hive中 兩個日期相差多少分鐘select (unix_timestamp('2018-05-25 12:03:55') - unix_timestamp('2018-05-25 11:03:55'))/60
輸出:60
hive 計算某乙個日期屬於星期幾,如2018-05-20 是星期日select if(pmod(datediff('2018-05-20', '1920-01-01') - 3, 7)='0', 7, pmod(datediff('2018-05-20', '1920-01-01') - 3, 7))
輸出:7
hive返回上個月第一天和最後一天--上個月第一天
select trunc(add_months(current_timestamp,-1),'mm')
select concat(substr(add_months(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),-1),1,7),'-01');
--上個月最後一天
select date_sub(trunc(current_timestamp,'mm'),1);
hive時間函式
語法 from unixtime bigint unixtime stringformat 返回值 string 說明 轉化unix時間戳 從1970 01 0100 00 00 utc到指定時間的秒數 到當前時區的時間格式 舉例 select from unixtime 1323308943,yy...
hive 時間操作函式
日期函式unix時間戳轉日期函式 from unixtime語法 from unixtime bigint unixtime string format 返回值 string 說明 轉化unix時間戳 從1970 01 01 00 00 00 utc到指定時間的秒數 到當前時區的時間格式 舉例 hi...
hive 時間函式 總結
做資料探勘的,離不開使用各種時間函式。為了避免遺忘,以及後續各種抓瞎到處亂找,特意總結了hive中大部分常用的時間函式,方便自己也方便他們。返回當前時區的unix時間戳 返回型別 bigint hive tmp select unix timestamp from hive sum limit 1 ...