メインコンテンツまでスキップ
バージョン: 26.x

FORMAT

説明

FORMAT関数は、指定されたフォーマット文字列とパラメータを使用してフォーマットされた文字列を返します。フォーマットルールはfmt format specificationに従います。

構文

FORMAT(<format>, <args>[, ...])

パラメータ

パラメータ説明
<format>フォーマットプレースホルダーを含むフォーマット文字列。型:VARCHAR
<args>フォーマットされるパラメータ(複数可)。型:ANY

戻り値

VARCHAR型を返し、フォーマット文字列に従ってフォーマットされた結果を表します。

特殊なケース:

  • いずれかのパラメータがNULLの場合、NULLを返します
  • フォーマット文字列はプレースホルダーとして{}を使用します
  • 位置パラメータ(例:{0}{1})と名前付きパラメータをサポートします
  • 様々なフォーマットオプション(配置、精度、パディングなど)をサポートします

  1. 基本的な使用法:数値の精度をフォーマット
SELECT format('{:.2}', pi());
+-----------------------+
| format('{:.2}', pi()) |
+-----------------------+
| 3.1 |
+-----------------------+
  1. 複数パラメータのフォーマット
SELECT format('{0}-{1}', 'hello', 'world');
+-------------------------------------+
| format('{0}-{1}', 'hello', 'world') |
+-------------------------------------+
| hello-world |
+-------------------------------------+
  1. 配置とパディング
SELECT format('{:>10}', 123);
+-----------------------+
| format('{:>10}', 123) |
+-----------------------+
| 123 |
+-----------------------+
  1. NULL値の処理
SELECT format('{:.2}', NULL);
+-----------------------+
| format('{:.2}', NULL) |
+-----------------------+
| NULL |
+-----------------------+
  1. UTF-8文字列処理
SELECT format('{0}-{1}', 'ṭṛṭṛ', 'ṭṛ');
+---------------------------------------------+
| format('{0}-{1}', 'ṭṛṭṛ', 'ṭṛ') |
+---------------------------------------------+
| ṭṛṭṛ-ṭṛ |
+---------------------------------------------+