1. 程式人生 > >postgreSQL除法保留小數

postgreSQL除法保留小數

col post cast postgresq postgres -- row pos 保留小數

--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除法保留小數