2
select round(849299099755.3,2) from dual;

849299099755.3

我怎么能到849299099755.30这里???

4

3 回答 3

3

将数据类型转换为DECIMAL

SELECT CONVERT(DECIMAL(15,2), ROUND(849299099755.3,2))

或者

SELECT STR(ROUND(849299099755.3,2), 20, 2)
于 2013-02-19T06:54:51.593 回答
1

对于SQL Server

select convert(numeric(28,2),round(849299099755.3,2)) from dual;
于 2013-02-19T06:54:01.913 回答
1

对于甲骨文:

ROUND 函数返回一个 NUMBER,并且round(849299099755.3,2)确实等于849299099755.3,所以它工作正常。但是,当您想要显示它时,它将使用您会话的默认数字格式设置。

要将其格式化为两位小数,您可以使用该TO_CHAR函数,例如:

SELECT TO_CHAR(round(849299099755.3,2),'999999999990.00') FROM DUAL;
于 2013-02-19T08:06:13.640 回答