如何停止对 MySQL 小数字段进行四舍五入?

mysqlmysqli database

您可以借助 DECIMAL() 函数停止对小数字段进行四舍五入。以下是四舍五入小数字段的演示。为了便于举例,我们首先创建一个演示表

mysql> create table stopRoundingDemo
   -> (
   -> Amount DECIMAL(7)
   -> );
Query OK, 0 rows affected (0.67 sec)

使用 insert 命令在表中插入一些记录。 查询语句如下 −

mysql> insert into stopRoundingDemo values(7836.783);
Query OK, 1 row affected, 1 warning (0.43 sec)
mysql> insert into stopRoundingDemo values(1737.67);
Query OK, 1 row affected, 1 warning (0.23 sec)
mysql> insert into stopRoundingDemo values(110.50);
Query OK, 1 row affected, 1 warning (0.33 sec)

使用 select 语句显示表中的所有记录。查询如下 −

mysql> select *from stopRoundingDemo;

以下是输出 −

+--------+
| Amount |
+--------+
| 7837   |
| 1738   |
| 111    |
+--------+
3 rows in set (0.08 sec)

在上面的示例输出中,小数被四舍五入。

现在,我们将了解如何停止对小数进行四舍五入。为此,让我们首先创建一个新表并设置 DECIMAL 类型,以便给出不进行四舍五入的结果

mysql> create table stopRoundingDemo2
   -> (
   -> Amount DECIMAL(10,4)
   -> );
Query OK, 0 rows affected (0.81 sec)

使用 insert 命令在表中插入一些记录。 查询语句如下 −

mysql> insert into stopRoundingDemo2 values(7836.783);
Query OK, 1 row affected (0.14 sec)
mysql> insert into stopRoundingDemo2 values(1737.67);
Query OK, 1 row affected (0.14 sec)
mysql> insert into stopRoundingDemo2 values(110.50);
Query OK, 1 row affected (0.16 sec)

使用 select 语句显示表中的所有记录。查询如下 −

mysql> select *from stopRoundingDemo2;

输出如下

+-----------+
| Amount    |
+-----------+
| 7836.7830 |
| 1737.6700 |
| 110.5000  |
+-----------+
3 rows in set (0.00 sec)

相关文章