ホームページ >データベース >mysql チュートリアル >MySQL で整数を通貨としてフォーマットするにはどうすればよいですか?

MySQL で整数を通貨としてフォーマットするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-27 15:33:10195ブラウズ

How can I format integers as currency in MySQL?

MySQL の通貨形式: 通貨として整数を選択する

MySQL には、データ取得中に整数値を通貨形式に変換するためのいくつかのオプションが用意されています。最も一般的なアプローチは次のとおりです。

1. CONCAT() と FORMAT()

FORMAT() 関数を使用すると、数値に書式設定パターンを適用できます。通貨形式の場合、次のパターンを使用できます:

FORMAT(number, decimal_places)

整数を通貨形式に変換するには、次のクエリを使用できます:

SELECT CONCAT('$', FORMAT(val, 2)) AS formatted_currency ... ;

これは整数の値を返します。小数点以下 2 桁の通貨値として書式設定されます。

2.文字列置換

もう 1 つのオプションは、文字列置換を使用して数値文字列にカンマを挿入することです。このアプローチには、カスタム関数の作成、または SUBSTRING_INDEX():

CREATE FUNCTION format_currency(number INT)
RETURNS VARCHAR(255)
BEGIN
  DECLARE formatted_number VARCHAR(255);
  SET formatted_number = REPEAT('0', FLOOR(LOG10(number)) + 1);
  WHILE number > 0 DO
    SET formatted_number = SUBSTRING_INDEX(formatted_number, '0', -3);
    SET formatted_number = CONCAT(formatted_number, ',');
    SET formatted_number = CONCAT(formatted_number, SUBSTRING(CAST(number AS CHAR), -2));
    SET number = number / 100;
  END WHILE;
  SET formatted_number = SUBSTRING(formatted_number, 1, LENGTH(formatted_number) - 1);
  SET formatted_number = CONCAT('$', formatted_number);
  RETURN formatted_number;
END;

などの組み込み関数の使用が含まれます。その後、format_currency() 関数を使用して整数値を通貨としてフォーマットできます:

SELECT format_currency(val) AS formatted_currency ... ;

以上がMySQL で整数を通貨としてフォーマットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。