数据湖探索 DLI-时间函数:函数说明
函数说明
函数 |
返回值 |
描述 |
---|---|---|
DATE string |
DATE |
将日期字符串以"yyyy-MM-dd"的形式解析为SQL日期。 |
TIME string |
TIME |
将时间字符串以"HH:mm:ss[.fff]"形式解析为SQL时间。 |
TIMESTAMP string |
TIMESTAMP |
将时间字符串转换为时间戳,时间字符串格式为:"yyyy-MM-dd HH:mm:ss[.fff]"。 |
INTERVAL string range |
INTERVAL |
interval表示时间间隔。有两种类型,分别为:
例如: INTERVAL '10 00:00:00.004' DAY TO second表示间隔10天4毫秒。 INTERVAL '10' DAY表示间隔10天 INTERVAL '2-10' YEAR TO MONTH表示间隔2年10个月。 |
CURRENT_DATE |
DATE |
以UTC时区返回当前SQL日期。 |
CURRENT_TIME |
TIME |
以UTC时区返回当前SQL时间。 |
CURRENT_TIMESTAMP |
TIMESTAMP |
以UTC时区返回当前SQL时间戳。 |
LOCALTIME |
TIME |
返回当前时区的当前SQL时间。 |
LOCALTIMESTAMP |
TIMESTAMP |
返回当前时区的当前SQL时间戳。 |
EXTRACT(timeintervalunit FROM temporal) |
BIGINT |
提取时间点的一部分或者时间间隔。以int类型返回该部分。 例如:提取日期“2006-06-05”中的日为5 EXTRACT(DAY FROM DATE '2006-06-05') 返回5。 |
YEAR(date) |
BIGINT |
返回输入时间的年份 例如:YEAR(DATE '1994-09-27') 返回1994 |
QUARTER(date) |
BIGINT |
从SQL日期返回表示该日期季度的数字。 |
MONTH(date) |
BIGINT |
返回输入时间的月份 例如:MONTH(DATE '1994-09-27')返回9 |
WEEK(date) |
BIGINT |
计算当前日期是一年中的第几周 例如:WEEK(DATE '1994-09-27') 返回39 |
DAYOFYEAR(date) |
BIGINT |
计算当前日期是一年中的第几天 例如:DAYOFYEAR(DATE '1994-09-27') 返回270 |
DAYOFMONTH(date) |
BIGINT |
计算当前日期是这个月的第几天 例如:DAYOFMONTH(DATE '1994-09-27') 返回27 |
DAYOFWEEK(date) |
BIGINT |
计算当前日期是当前周的第几天 其中周日设为1 例如:DAYOFWEEK(DATE '1994-09-27') 返回3 |
HOUR(timestamp) |
BIGINT |
返回当前时间戳的24小时制的小时数,范围0-23 例如:HOUR(TIMESTAMP '1994-09-27 13:14:15') 返回13 |
MINUTE(timestamp) |
BIGINT |
返回当前时间戳中的分钟数,范围0-59 例如:MINUTE(TIMESTAMP '1994-09-27 13:14:15') 返回14 |
SECOND(timestamp) |
BIGINT |
返回当前时间戳中的秒数,范围0-59 例如:SECOND(TIMESTAMP '1994-09-27 13:14:15') 返回15 |
FLOOR(timepoint TO timeintervalunit) |
TIME |
向下对齐时间。 例如:FLOOR(TIME '12:44:31' TO MINUTE)按分钟对齐到12:44:00。 |
CEIL(timepoint TO timeintervalunit) |
TIME |
向上对齐时间。 例如:CEIL(TIME '12:44:31' TO MINUTE)按分钟对齐到12:45:00。 |
(timepoint1, temporal1) OVERLAPS (timepoint2, temporal2) |
BOOLEAN |
若两个时间范围有重叠,则返回TRUE 例如: (TIME '2:55:00', INTERVAL '1' HOUR) OVERLAPS (TIME '3:30:00', INTERVAL '2' HOUR) 返回TRUE (TIME '9:00:00', TIME '10:00:00') OVERLAPS (TIME '10:15:00', INTERVAL '3' HOUR) 返回 FALSE |
DATE_FORMAT(timestamp, string) |
STRING |
将日期从源格式转换至目标格式 |
TIMESTAMPADD(timeintervalunit, interval, timepoint) |
TIMESTAMP/DATE/TIME |
将整型interval与timeintervalunit组成的结果添加日期或日期时间到timepoint中,并返回添加后的日期时间 例如:TIMESTAMPADD(WEEK, 1, DATE '2003-01-02') 返回2003-01-09 |
TIMESTAMPDIFF(timepointunit, timepoint1, timepoint2) |
INT |
返回timepoint1和timepoint2相差的时间单元数量 timepointunit表示时间单元,应该是SECOND、MINUTE、HOUR、DAY、MONTH或YEAR 例如: TIMESTAMPDIFF(DAY, TIMESTAMP '2003-01-02 10:00:00', TIMESTAMP '2003-01-03 10:00:00') 返回1 |
CONVERT_TZ(string1, string2, string3) |
TIMESTAMP |
将string2时区的时间string1转换为其在string3时区的对应时间 例如:CONVERT_TZ('1970-01-01 00:00:00', 'UTC', 'Country A/City A') 返回'1969-12-31 16:00:00' |
FROM_UNIXTIME(numeric[, string]) |
STRING |
根据时间戳numeric和当前时区返回string格式的时间 string默认格式为'YYYY-MM-DD hh:mm:ss' 例如:FROM_UNIXTIME(44)返回1970-01-01 09:00:44 |
UNIX_TIMESTAMP() |
BIGINT |
返回当前时间的时间戳,单位为秒 |
UNIX_TIMESTAMP(string1[, string2]) |
BIGINT |
将string2格式的时间字符串string1转为时间戳,单位为秒 string2默认格式为'yyyy-MM-dd HH:mm:ss' |
TO_DATE(string1[, string2]) |
DATE |
将string2格式的日期字符串,转换为DATE类型 string2默认格式为 'yyyy-MM-dd' |
TO_TIMESTAMP(string1[, string2]) |
TIMESTAMP |
将string2格式的日期时间字符串转换为TIMESTAMP类型 string2默认格式为'yyyy-MM-dd HH:mm:ss' |
- GaussDB函数_GaussDB数据库函数_高斯数据库函数_华为云
- GaussDB支持的函数_GaussDB函数类型解析_高斯数据库支持的函数-华为云
- 调用函数_函数调用方式_函数工作流 FunctionGraph-华为云
- GaussDB数据库函数_GaussDB函数和操作符_高斯数据库函数-华为云
- GaussDB数据库函数_GaussDB介绍_高斯数据库函数
- 什么是函数工作流_函数托管计算服务_函数工作流 FunctionGraph-华为云
- 使用容器镜像部署函数_函数部署_函数工作流 FunctionGraph-华为云
- 如何使用模板创建函数_模板创建函数_函数工作流 FunctionGraph-华为云
- 使用SpringBoot构建HTTP函数_functiongraph_函数工作流
- 什么是函数工作流_functiongraph是什么_函数工作流服务