我们怎样才能以指定格式检索一个列的小数输出值?


MySQL FORMAT() 函数可以将一个数字转换为诸如 #,###,###.### 之类的格式,其四舍五入到指定的保留小数位数并且将结果作为字符串返回,可以用来以指定格式检索一个列的小数输出值。为了理解这一点,我们以 estimated_cost 表(具有以下数据)为例 −

mysql> Select * from estimated_cost;
+----+-----------------+-----------+---------------+
| Id | Name_Company    | Tender_id | Tender_value  |
+----+-----------------+-----------+---------------+
| 1  | ABC Ltd.        | 110       | 256.3256879   |
| 2  | Chd Ltd.        | 116       | 8569.25647879 |
| 3  | City group Ltd. | 202       | 23647.2365987 |
| 4  | Hjkl Ltd.       | 215       | 6598.327846   |
+----+-----------------+-----------+---------------+
4 rows in set (0.00 sec)

现在,假设如果我们想要看到 Tender_value 列的值,保留到指定的小数位数,那么可以借助以下查询完成 −

mysql> Select FORMAT(Tender_value,2) from estimated_cost;
+------------------------+
| FORMAT(Tender_value,2) |
+------------------------+
| 256.33                 |
| 8,569.26               |
| 23,647.24              |
| 6,598.33               |
+------------------------+
4 rows in set (0.00 sec)

以上查询返回 Tender_value 值,保留到小数点后 2 位。

mysql> Select FORMAT(Tender_value,1) from estimated_cost1;
+------------------------+
| FORMAT(Tender_value,1) |
+------------------------+
| 256.3                  |
| 8,569.3                |
| 23,647.2               |
| 6,598.3                |
+------------------------+
4 rows in set (0.00 sec)

以上查询返回 Tender_value 值,保留到小数点后 1 位。

更新日期:2020 年 6 月 22 日

492 个浏览量

开启您职业生涯

完成课程,获取证书

开始
广告