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 型の値です。この値は TO_TIME 関数を使用して作成できます。
MaxCompute V1.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:カスタムテキストフォーマットを使用して、時、分、秒、ミリ秒などの時刻要素をテキスト文字列に挿入します。
-- The time is 24:33 and the millisecond part is 000 を返します。 SELECT FORMAT_TIME(48273000000,"The time is %M:%S and the millisecond part is 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 は時刻関数です。日付の計算と変換に関する関数の詳細については、「日付関数」をご参照ください。