mysql中日期加減和hive中日期加減區別

2021-08-20 21:15:06 字數 1708 閱讀 5380

先來看看mysql中日期的加減:

mysql 為日期增加乙個時間間隔:date_add()

now()       //now函式為獲取當前時間

select date_add(now(), interval 1 day); - 加1天

select date_add(now(), interval 1 hour); -加1小時

select date_add(now(), interval 1 minute); - 加1分鐘

select date_add(now(), interval 1 second); -加1秒

select date_add(now(), interval 1 microsecond);-加1毫秒

select date_add(now(), interval 1 week);-加1周

select date_add(now(), interval 1 month);-加1月

select date_add(now(), interval 1 quarter);-加1季

select date_add(now(), interval 1 year);-加1年

mysql adddate(), addtime()函式,可以用date_add() 來替代。

2. mysql 為日期減去乙個時間間隔:date_sub()

mysql date_sub() 日期時間函式 和date_add() 用法一致。

mysql 中subdate(),subtime()函式,建議,用date_sub()來替代。

在hive中,日期加減和mysql稍有區別,個人認為hive中的更簡潔一點:

日期增加函式: date_add(string startdate, int days)

格式返回值

說明date_add

date_add(string startdate, int days)

string

返回開始日期startdate增加days天後的日期

hive (temp)> select date_add('2016-12-08',10) from dual;

2016-12-18

#當前日期為2016-08-25,在此基礎上加7天

hive (temp)> select date_add(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),7) from dual;

2016-09-01

日期減少函式:date_sub (string startdate, int days)

格式返回值

說明date_sub

date_sub(string startdate, int days)

string

返回開始日期startdate減少days天後的日期

hive (temp)> select date_sub('2016-12-08',10) from dual;

2016-11-28

#當前日期為2016-08-25,在此基礎上減7天

hive (temp)> select date_sub(from_unixtime(unix_timestamp(),'yyyy-mm-dd'),7) from dual;

2016-08-18

HIVE中日期轉換

本來是sql查出來是兩條資料 select groupid,shopid,shopname,deliverytime,sku,transport type from ods amz group fee where dt 2020 12 11 and sku fba syhg372 30cm mm表示...

Hive中日期函式總結

hive中日期函式總結 1.時間戳函式 日期轉時間戳 從1970 01 01 00 00 00 utc到指定時間的秒數 select unix timestamp 獲得當前時區的unix時間戳 select unix timestamp 2017 09 15 14 23 00 select unix...

Hive中日期函式總結

hive中日期函式總結 1.時間戳函式 日期轉時間戳 從1970 01 01 00 00 00 utc到指定時間的秒數 select unix timestamp 獲得當前時區的unix時間戳 select unix timestamp 2017 09 15 14 23 00 select unix...