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函數屬於時間函數,更多日期計算、日期轉換的相關函數請參見日期函數。