dateadd(string date, bigint delta, string datepart)
STRING或DATE
dateadd函数用于按照指定的单位datepart和幅度delta修改date的值。
date:必填。日期值,string类型。
使用的时间格式为yyyy-mm-dd hh:mi:ss,例如2021-08-28 00:00:00。
delta:必填。修改幅度,BIGINT类型。
datepart:必填。指定修改的单位,STRING类型常量。
date_sub
date_sub(string startdate, int days)
STRING
给定时间,在此基础上减去指定的时间段。
date_format
date_format(string date, string format)
STRING
用于将date按照format指定的格式转换为字符串。
datediff
datediff(string date1, string date2)
BIGINT
datediff函数用于计算两个时间date1、date2的日期差值。
datediff1
datediff1(string date1, string date2, string datepart)
BIGINT
datediff1函数用于计算两个时间date1、date2的差值,将差值以指定的时间单位datepart表示。
datepart
datepart(string date,string datepart)
BIGINT
取日期中符合指定时间单位的字段值。
datetrunc
datetrunc (string date, string datepart)
STRING
datetrunc函数用于计算将日期date按照datepart指定的时间单位进行截取后的日期值。
date:必填。格式为yyyy-mm-dd或yyyy-mm-dd hh:mi:ss。
datepart:必填。STRING类型常量。支持扩展的日期格式。
day/dayofmonth
day(string date)、 dayofmonth(string date)
返回指定时间的日期。
from_unixtime
from_unixtime(bigint unixtime)
STRING
将时间戳转换为时间格式,格式为“yyyy-MM-dd HH:mm:ss”或“yyyyMMddHHmmss.uuuuuu”。
例如:select FROM_UNIXTIME(1608135036,'yyyy-MM-dd HH:mm:ss')
from_utc_timestamp
from_utc_timestamp(string timestamp, string timezone)
TIMESTAMP
将UTC的时间戳转化为timezone所对应的时间戳。
getdate
getdate()
STRING
获取当前系统时间。
hour(string date)
返回指定时间的小时,范围为0到23。
isdate
isdate(string date , string format)
BOOLEAN
date:必填。STRING类型。会隐式转换为STRING类型后参与运算。
format:必填。STRING类型常量,不支持日期扩展格式。如果format中出现多余的格式串,则只取第一个格式串对应的日期数值,其余的会被视为分隔符。例如isdate("1234-yyyy", "yyyy-yyyy"),会返回True。
last_day
last_day(string date)
返回date所在月份的最后一天,格式为yyyy-MM-dd,如2015-08-31。
lastday
lastday(string date)
STRING
lastday函数用于返回date所在月的最后一天,返回值STRING类型,格式为yyyy-mm-dd hh:mi:ss。
minute
minute(string date)
返回指定时间的分钟,范围为0到59。
month
month(string date)
返回指定时间的月份,范围为1至12月。
months_between
months_between(string date1, string date2)
DOUBLE
返回date1与date2之间的月份差。
next_day
next_day(string start_date, string day_of_week)
返回start_date之后最接近day_of_week的日期,格式为yyyy-MM-dd,day_of_week表示一周内的星期(如Monday、FRIDAY)。
quarter
quarter(string date)
返回该date/timestamp/string所在的季度,如quarter('2015-04-01')=2。
second
second(string date)
返回指定时间的秒,范围为0到59。
to_char
to_char(string date, string format)
STRING
将日期按照指定格式转换为字符串。
to_date
to_date(string timestamp)
返回时间中的年月日,例如:to_date("1970-01-01 00:00:00") = "1970-01-01"
to_date1
to_date1(string date, string format)
STRING
返回STRING类型,格式为yyyy-mm-dd hh:mi:ss。date或format值为NULL时,返回NULL。
将指定格式的字符串转换为日期值。
to_utc_timestamp
to_utc_timestamp(string timestamp, string timezone)
TIMESTAMP
将timezone所对应的时间戳转换为UTC的时间戳。
trunc
trunc(string date, string format)
将date按照特定的格式进行清零操作,支持格式为MONTH/MON/MM, YEAR/YYYY/YY,如trunc('2015-03-17', 'MM') = 2015-03-01。
unix_timestamp
unix_timestamp(string timestamp, string pattern)
BIGINT
如果不带参数的调用,返回一个Unix时间戳(从
“1970-01-01 00:00:00”
到现在的秒数)为无符号整数。
weekday
weekday (string date)
返回日期值是当前周的第几天。
weekofyear
weekofyear(string date)
返回指定日期是一年中的第几周,范围为0到53。
year(string date)
返回指定日期中的年份。