Oracle数据库返回字符类型-1~1的结果处理

时间:2024-01-14 13:12:02

如果实体类中定义的字段是String类型,Oracle数据库中返回的是数字类型,那么Oracle返回0.xxx的时候会丢失前面的0。

要想不丢失0,那么数据库返回的就要是字符串类型的,所以要将返回值转换成字符串类型。

例如:

SELECT 2/3 FROM dual;--返回的是数字
SELECT to_char(2/3) FROM dual;--返回的是字符串,但是舍去了前面的0
SELECT to_char(2/3,'fm990.00') FROM dual;--返回的是正常的字符串

第一行第二行在接收的时候都会舍去前面的0,第三行可以接收到正常的值。

其中‘fm990.00’的含义是:小数点前不超过三位,后是两位,必须用9和0表示。==》小数点前后的位数都表示结果的位数

如果返回值大于等于1,那么小数点前正常显示;后面至少有两位,不足的用0补。

如果返回值小于1,那么小数点前显示0;后面同上。