FORMAT_TIME函数用于将一个以微秒为单位的BIGINT类型时间值time按照指定的格式format格式化为时间格式STRING类型字符串。
命令格式
STRING FORMAT_TIME(BIGINT <time>, STRING <format>)
-- 标准示例。
-- 返回13:24:33.000。
SELECT FORMAT_TIME(48273000000, '%H:%M:%S.ff3');参数说明
time:必填。以微秒为单位用BIGINT类型表示的时间值。BIGINT类型。可以通过TO_TIME函数构造。
在MaxCompute 1.0数据类型版本下,如果参数为STRING或DOUBLE类型,则会被隐式转换为BIGINT类型后参与运算。
format:必填。用于指定输出的时间字符串格式。STRING类型。format目前支持的时间部分的格式元素如下:
hh、HH或%H:小时。mi、MI或%M:分钟。ss、SS或%S:秒。ff3:毫秒,单独匹配秒的小数部分,例如用%S.ff3匹配00.123。%E<number>S:秒,小数精度为<number>位,例如用%E3S匹配00.123。%E*S:有完整6位小数精度的秒,例如00.123456。
返回值说明
返回STRING类型。格式化之后的时间字符串。当time和format中有任意一个值为NULL时,返回NULL。
使用示例
示例1:标准时间格式输出。
-- 返回13:24:33.000。 SELECT FORMAT_TIME(48273000000, '%H:%M:%S.ff3');示例2:自定义文本格式,支持在固定文本中插入小时、分钟、秒及毫秒等时间元素。
-- 返回 时间是24:33毫秒部分为000。 SELECT FORMAT_TIME(48273000000,"时间是%M:%S毫秒部分为ff3"); -- 返回only show 13:24。 SELECT FORMAT_TIME(48273000000,"only show hh:mi");示例3:结合TO_TIME构造时间值,再进行格式化输出。
-- 返回15:03:01。 SELECT FORMAT_TIME(TO_TIME('15:03:01', 'hh:mi:ss'), '%H:%M:ss');示例4:NULL输入处理。
-- 任意参数为NULL,均返回NULL。 -- 返回NULL。 SELECT FORMAT_TIME(NULL, '%H:%M:%S.ff3'); -- 返回NULL。 SELECT FORMAT_TIME(48273000000, NULL);
相关函数
FORMAT_TIME函数属于时间函数,更多日期计算、日期转换的相关函数请参见日期函数。
该文章对您有帮助吗?