ウェブサイト検索

MySQL で一方の値をキャストし、もう一方の値で除算を実行しますか?


これには、まず CAST() を使用します。まずテーブルを作成しましょう。

mysql> create table DemoTable1352
    -> (
    -> Value1 int,
    -> Value2 int
    -> );
Query OK, 0 rows affected (0.54 sec)

insert コマンドを使用してテーブルにいくつかのレコードを挿入します。

mysql> insert into DemoTable1352 values(10,30);
Query OK, 1 row affected (0.42 sec)
mysql> insert into DemoTable1352 values(40,60);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1352 values(110,130);
Query OK, 1 row affected (0.18 sec)

select ステートメントを使用してテーブルのすべてのレコードを表示します。

mysql> select * from DemoTable1352;

これにより、次の出力が生成されます。

+--------+--------+
| Value1 | Value2 |
+--------+--------+
|     10 |     30 |
|     40 |     60 |
|    110 |    130 |
+--------+--------+
3 rows in set (0.00 sec)

値の 1 つをキャストして除算を実行するクエリは次のとおりです。

mysql> select cast(Value1 as DECIMAL(18,14)) / Value2 from DemoTable1352;

これにより、次の出力が生成されます。

+-----------------------------------------+
| cast(Value1 as DECIMAL(18,14)) / Value2 |
+-----------------------------------------+
|                    0.333333333333333333 |
|                    0.666666666666666666 |
|                    0.846153846153846153 |
+-----------------------------------------+
3 rows in set (0.00 sec)

関連記事: