MySQLで3桁区切りをする方法

MySQLで3桁区切りをする方法

MySQLで3桁区切りのフォーマットを行う方法はいくつかあります。
一般的には、数値を文字列に変換し、カンマ区切りでフォーマットする関数を使用します。
特に「FORMAT」関数が役立ちます。
この関数は数値を指定された小数点以下の桁数でフォーマットし、デフォルトで3桁区切りのカンマを追加します。

FORMAT関数の使い方

FORMAT関数の基本的な構文は以下の通りです:

FORMAT(数値, 小数点以下の桁数)

例えば、次のクエリを実行すると、数値をカンマ区切りでフォーマットできます。

SELECT FORMAT(1234567.89, 2);

このクエリの出力は'1,234,567.89'になります。
ここで、1234567.89という数値が3桁区切りで表示され、小数点以下2桁にフォーマットされています。

小数点以下の桁数を指定しない場合

小数点以下の桁数を指定しない場合、デフォルトで小数点以下0桁としてフォーマットされます。

SELECT FORMAT(1234567.89, 0);

この場合、出力は'1,234,568'になります。
数値が四捨五入され、小数点以下は表示されません。

異なるロケールでのフォーマット

MySQLのFORMAT関数では、ロケール(地域設定)を指定することも可能です。
たとえば、ドイツのロケールを使用すると、小数点記号と桁区切り記号が変更されます。

SELECT FORMAT(1234567.89, 2, 'de_DE');

このクエリの出力は'1.234.567,89'になります。
ここでは、ピリオド(.)が3桁区切りの区切り文字として使用され、カンマ(,)が小数点記号として使用されています。

まとめ

MySQLで数値を3桁区切りにフォーマットするには、FORMAT関数が最も簡単で一般的な方法です。
ただし、FORMAT関数を使用する場合、小数点以下の桁数やロケールを指定できるため、多くのニーズに対応できます。
さらに、CONCAT_WSやGROUP_CONCATを使用することで、カスタムのフォーマットを作成することも可能です。
これらの方法を駆使して、目的に応じた数値のフォーマットを実現できます。