我正在使用MySql。我需要将2783571287的双精度结果转换为十进制的"27835712,87"。在我的例子中,我使用","作为十进制分隔符。
我设法使用了强制转换函数,但之前无法设置构成值末尾的两位小数。
此外,我不能";切割";使用SUBSTRING函数作为字符数量的值可能会有所不同。
有人知道我该怎么做吗?
感谢
此外,我无法"切割";使用SUBSTR函数作为字符数量的值可能会变化。
如果要删除最后两个字符,请使用substr((和length((作为
mysql> select substr(2783571287, 1, length(2783571287) - 2);
+-----------------------------------------------+
| substr(2783571287, 1, length(2783571287) - 2) |
+-----------------------------------------------+
| 27835712 |
+-----------------------------------------------+
1 row in set (0.00 sec)
您还可以使用right((提取最后两个字符
mysql> select right(2783571287, 2);
+----------------------+
| right(2783571287, 2) |
+----------------------+
| 87 |
+----------------------+
1 row in set (0.00 sec)
然后
mysql> select concat(substr(2783571287, 1, length(2783571287) - 2), ',', right(2783571287, 2));
+----------------------------------------------------------------------------------+
| concat(substr(2783571287, 1, length(2783571287) - 2), ',', right(2783571287, 2)) |
+----------------------------------------------------------------------------------+
| 27835712,87 |
+----------------------------------------------------------------------------------+
1 row in set (0.00 sec)