--1 例子
postgres=# select 1/4;
?column?
----------
0
(1 row)
在PG里如果想做除法并想保留小数,用上面的方法却行不通,因为"/" 运算结果为取整,并且会截掉小数部分。
--2 类型转换
postgres=# select round(1::numeric/4::numeric,2);
round
-------
0.25
(1 row)
备注:类型转换后,就能保留小数部分了。
--3 也可以通过 cast 函数进行转换
postgres=# select round( cast ( 1 as numeric )/ cast( 4 as numeric),2);
round
-------
0.25
(1 row)
--4 关于 cast 函数的用法
postgres=# SELECT substr(CAST (1234 AS text), 3,1);
substr
--------
3
(1 row)
本文详细介绍了在PostgreSQL中如何通过类型转换保留除法运算的小数部分,包括使用numeric类型和cast函数的具体操作,对于需要精确数学运算的场景提供了实用的解决方案。

被折叠的 条评论
为什么被折叠?



