MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのレコードに桁区切り(3桁ごとのカンマ)を表示する方法

MySQLでは、数値データに3桁ごとのカンマ(桁区切り文字)を挿入して表示したい場合、FORMAT()関数を使用します。この関数を使うと、金額などの大きな数値を読みやすい形式に整形できます。

ここでは、実際にテーブルを作成して動作を確認してみましょう。

1. サンプルテーブルの作成

まず、以下のようにテーブルを作成します。

mysql> create table DemoTable
-> (
-> Amount DECIMAL(10,2)
-> );
Query OK, 0 rows affected (0.45 sec)

2. レコードの挿入

次に、INSERT文を使ってサンプルデータを挿入します。

mysql> insert into DemoTable values(84848757.60);
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable values(95868685.50);
Query OK, 1 row affected (0.15 sec)

mysql> insert into DemoTable values(4242342.36);
Query OK, 1 row affected (0.21 sec)

3. テーブルの内容を確認

SELECT文ですべてのレコードを表示して確認しましょう。

mysql> select *from DemoTable;

出力結果

+-------------+
| Amount |
+-------------+
| 84848757.60 |
| 95868685.50 |
|  4242342.36 |
+-------------+
3 rows in set (0.00 sec)

この状態では、数値がそのまま表示され、桁区切りは入っていません。

4. FORMAT()関数で桁区切りを設定する

桁区切り文字を表示するには、次のようなクエリを実行します。FORMAT()関数の第2引数には、小数点以下の桁数を指定します。

mysql> select format(Amount,2) from DemoTable;

出力結果

+------------------+
| format(Amount,2) |
+------------------+
| 84,848,757.60 |
| 95,868,685.50 |
| 4,242,342.36 |
+------------------+
3 rows in set (0.00 sec)

解説

FORMAT()関数は、数値を「#,###,###.##」の形式に丸めて整形し、3桁ごとにカンマを挿入した文字列として返します。上記の例では、小数点以下2桁を指定しているため、「84848757.60」が「84,848,757.60」と表示されています。

なお、FORMAT()関数の戻り値は文字列型になるため注意してください。並べ替えや計算を行う場合は元の数値列を使用し、FORMAT()は表示用として使うのがよいでしょう。また、第3引数にロケール(例:'ja_JP')を指定することで、地域ごとの表記規則に合わせた書式にすることも可能です。

  1. MySQLでテーブルの日付レコードを変更する方法|UPDATEとDATE_ADD()の使い方

    MySQLで保存済みの日付データに年数を加算して変更したい場合、UPDATEコマンドとDATE_ADD()関数を組み合わせることで簡単に実現できます。ここでは、実際のSQLクエリ例を使いながら、日付レコードを変更する手順を順番に解説します。1. テーブルを作成するまず、日付型(date)のカラムを持つテーブルを作成します。mysql> create table DemoTable1984 ( ShippingDate date ); Query OK, 0 rows affected (0.00 sec)2. レコードを挿入する次に、INSERTコマンドを使ってテ

  2. MySQLで複数の行レコードを1行にまとめる方法|CASE WHENを使ったクロス集計の基本

    MySQLでは、複数の行に分かれているレコードを、条件ごとに1行へまとめて表示したいケースがあります。たとえば「同じ会社の従業員データを国別に横並びで表示したい」場合などです。こうした処理には CASE WHEN を使うのが定番の方法です。本記事では、実際にテーブルを作成し、複数の行レコードを1行に結合する手順をサンプルSQL付きで解説します。1. サンプルテーブルを作成するまずは、会社名・従業員名・国名を持つテーブルを作成します。mysql> create table demo68 -> ( -> id int not null auto_increment primary