に最終更新
FORMAT
説明
FORMAT関数は、指定した書式文字列と引数を使用して整形した文字列を返します。書式指定の規則はfmtの書式仕様に従います。
構文
FORMAT(<format>, <args>[, ...])
パラメータ
| パラメータ | 説明 |
|---|---|
<format> | 書式指定用のプレースホルダーを含む書式文字列。型: VARCHAR |
<args> | 整形する引数。複数指定できます。型: ANY |
戻り値
書式文字列に従って整形した結果をVARCHAR型で返します。
特別なケース:
- いずれかの引数がNULLの場合、NULLを返します
- 書式文字列では
{}をプレースホルダーとして使用します - 位置指定引数(例:
{0}、{1})と名前付き引数をサポートします - 配置、精度、パディングなど、さまざまな書式オプションをサポートします
使用例
- 基本的な使い方: 数値の精度を指定する
SELECT format('{:.2}', pi());
+-----------------------+
| format('{:.2}', pi()) |
+-----------------------+
| 3.1 |
+-----------------------+
- 複数の引数を整形する
SELECT format('{0}-{1}', 'hello', 'world');
+-------------------------------------+
| format('{0}-{1}', 'hello', 'world') |
+-------------------------------------+
| hello-world |
+-------------------------------------+
- 配置とパディング
SELECT format('{:>10}', 123);
+-----------------------+
| format('{:>10}', 123) |
+-----------------------+
| 123 |
+-----------------------+
- NULL値の処理
SELECT format('{:.2}', NULL);
+-----------------------+
| format('{:.2}', NULL) |
+-----------------------+
| NULL |
+-----------------------+
- UTF-8文字列の処理
SELECT format('{0}-{1}', 'ṭṛṭṛ', 'ṭṛ');
+---------------------------------------------+
| format('{0}-{1}', 'ṭṛṭṛ', 'ṭṛ') |
+---------------------------------------------+
| ṭṛṭṛ-ṭṛ |
+---------------------------------------------+