MySQLで数値を小数点以下2桁にフォーマットする方法
MySQLでは、TRUNCATE()関数を使用することで、数値を小数点以下2桁にフォーマットできます。TRUNCATE関数は、指定した桁数以降を切り捨てて表示するための関数です。
TRUNCATE()関数の基本構文
SELECT TRUNCATE(yourColumnName, 2) AS anyVariableName FROM yourTableName;
第1引数に対象のカラム名または数値、第2引数に残したい小数点以下の桁数を指定します。上記の例では「2」を指定しているため、小数点以下2桁までが表示されます。
サンプルテーブルの作成
それでは、実際に動作を確認するためにテーブルを作成してみましょう。テーブル作成のクエリは以下のとおりです。
mysql> create table FormatNumberTwoDecimalPlace
-> (
-> Number float
-> );
Query OK, 0 rows affected (0.59 sec)テストデータの挿入
次に、INSERTコマンドを使っていくつかのレコードを追加します。
mysql> insert into FormatNumberTwoDecimalPlace values(123.456); Query OK, 1 row affected (0.13 sec) mysql> insert into FormatNumberTwoDecimalPlace values(1.6789); Query OK, 1 row affected (0.19 sec) mysql> insert into FormatNumberTwoDecimalPlace values(12.2); Query OK, 1 row affected (0.14 sec) mysql> insert into FormatNumberTwoDecimalPlace values(12356.23145); Query OK, 1 row affected (0.40 sec) mysql> insert into FormatNumberTwoDecimalPlace values(12356); Query OK, 1 row affected (0.14 sec) mysql> insert into FormatNumberTwoDecimalPlace values(.5678); Query OK, 1 row affected (0.28 sec)
登録データの確認
SELECT文を実行して、テーブル内のすべてのレコードを表示してみましょう。
mysql> select *from FormatNumberTwoDecimalPlace;
出力結果
+---------+ | Number | +---------+ | 123.456 | | 1.6789 | | 12.2 | | 12356.2 | | 12356 | | 0.5678 | +---------+ 6 rows in set (0.04 sec)
小数点以下2桁にフォーマットするクエリ
ここで、数値を小数点以下2桁にフォーマットして取得するクエリを実行します。
mysql> select truncate(Number,2) as TwoValueAfterDecimal from FormatNumberTwoDecimalPlace;
出力結果
+----------------------+ | TwoValueAfterDecimal | +----------------------+ | 123.45 | | 1.67 | | 12.19 | | 12356.23 | | 12356.00 | | 0.56 | +----------------------+ 6 rows in set (0.00 sec)
このように、TRUNCATE関数を使うことで、すべての数値が小数点以下2桁で統一されて表示されました。整数値の「12356」も「12356.00」として出力されている点に注目してください。
補足:ROUND()との違い
TRUNCATE()は単純に指定桁以降を切り捨てるのに対し、四捨五入を行いたい場合はROUND()関数を使用します。また、金額表示のように3桁ごとにカンマ区切りを入れたい場合はFORMAT()関数が便利です。用途に応じてこれらの関数を使い分けるとよいでしょう。
-
MySQLクエリでテーブル列の日付形式を変更する方法
MySQLクエリでテーブル列の日付形式を変更する方法 MySQLでテーブルに保存された日付の表示形式を変更するには、DATE_FORMAT()関数を使用します。この記事では、サンプルテーブルを作成し、実際に日付形式を変換するまでの手順をサンプルコード付きでわかりやすく解説します。 1. サンプルテーブルの作成 まず、datetime型の列を持つテーブルを作成しましょう。 mysql> create table DemoTable1906 ( DueTime datetime ); Query OK, 0 rows affected (0.00 sec) 2.
-
【MySQL】小数点より2桁前(十の位)の数字を取得する方法
MySQLで小数点より2桁前(十の位)に位置する数字を取得したい場合は、div演算子の概念を利用すると簡単に実現できます。divは整数除算を行う演算子で、剰余演算子(%)と組み合わせることで、任意の桁の数字を取り出すことが可能です。 テーブルの作成 まず、動作確認用のサンプルテーブルを作成しましょう。 mysql> create table demo1 −> ( −> value float −> ); Query OK, 0 rows affected (2.20 sec) create table文を使用し、float型のカラム