在MySQL中舍入十进制值而不是舍入?

您可以使用TRUNCATE()方法对值进行底舍入而不是舍入。让我们首先创建一个表-

mysql> create table DemoTable
(
   Value DECIMAL(20,8)
);

使用插入命令在表中插入记录-

mysql> insert into DemoTable values(23.5654433);
mysql> insert into DemoTable values(12.345542211);
mysql> insert into DemoTable values(12345.678543);

以下是使用select语句显示表中所有记录的查询-

mysql> select *from DemoTable;

这将产生以下输出-

+----------------+
| Value          |
+----------------+
| 23.56544330    |
| 12.34554221    |
| 12345.67854300 |
+----------------+
3 rows in set (0.00 sec)

这是查询十进制值而不是舍入-

mysql> update DemoTable set Value=truncate(Value,2);
Rows matched: 3 Changed: 3 Warnings: 0

让我们再次检查表记录-

mysql> select *from DemoTable;

这将产生以下输出-

+----------------+
| Value          |
+----------------+
| 23.56000000    |
| 12.34000000    |
| 12345.67000000 |
+----------------+
3 rows in set (0.00 sec)