SQL Server では、FORMAT
関数を使用して、数値、日付、時刻などのデータ型を指定された形式にフォーマットし、フォーマットされた文字列を返します。
FORMAT
関数の基本的な構文は次のとおりです。
FORMAT ( value, format [, culture ] )
このうち、value
パラメーターは書式設定されるデータであり、数値、日付、時刻などの有効な SQL Server データ型を使用できます。format
引数は、value
引数をフォーマットする出力形式を指定する文字列です。culture
パラメータは、データのフォーマットに使用されるロケールを指定するオプションのパラメータです。
一般的な書式設定の例をいくつか示します。
- 数値のフォーマット:
SELECT FORMAT(123456.789, 'C') AS currency -- $123,456.79 SELECT FORMAT(123456.789, '0,0.00') AS number -- 123,456.79
2. 日付と時刻のフォーマット:
SELECT FORMAT(GETDATE(), 'd', 'en-US') AS short_date -- 3/18/2023
SELECT FORMAT(GETDATE(), 'D', 'en-US') AS long_date -- Saturday, March 18, 2023
SELECT FORMAT(GETDATE(), 't') AS short_time -- 4:39 PM
SELECT FORMAT(GETDATE(), 'T') AS long_time -- 4:39:37 PM
3. カスタム文字列をフォーマットします。
SELECT FORMAT(123456.789, '###-##-####') AS custom_format -- 123-45-6789
FORMAT
関数の使用には特定のコンピューティング リソースが必要なため、大量のデータを処理する場合は注意して使用する必要があることに 注意してください。また、関数を使用するなどの他の方法よりも時間がFORMAT
かかる可能性があるため、関数は最適な選択ではない場合もありますCONVERT
。
パラメータをアタッチします。
culture
パラメータは、データのフォーマットに使用されるロケールを指定するために使用されます。culture
パラメータはオプションのパラメータです。指定しない場合は、現在のセッションのロケールが使用されます。
一般的なロケールとパラメータ値culture
の例をいくつか示します。
- アメリカ英語:
en-US
- イギリス英語:
en-GB
- カナダ英語:
en-CA
- フランス フランス語:
fr-FR
- ドイツ語 ドイツ語:
de-DE
- イタリアの:
it-IT
- スペイン語:
es-ES
- 中国語(簡体字):
zh-CN
- 繁体字中国語):
zh-TW
- 日本:
ja-JP
- 韓国語:
ko-KR
各ロケールは、日付、時刻、通貨、数値、その他のデータ型をフォーマットするための特定のルールとフォーマットのセットを定義します。たとえば、英語ロケールでは通常MM/DD/YYYY
、日付形式は です。フランス語ロケールでは、通常、日付形式は ですDD/MM/YYYY
。
culture
ロケールが異なれば規約や規約も異なる場合があるので、パラメーターを使用する場合は、目的の形式に最も適したロケールを選択する必要があることに 注意することが重要です。