web-dev-qa-db-ja.com

合計を浮動小数点数に変換するキャスト構文

PostgreSQL 9.3を使用して、計算値をデータ型floatに変換します。

私の最初の試み:

SELECT float(SUM(Seconds))/-1323 AS Averag;

私にこのエラーを与えます:

syntax error at or near "SUM"

私の2回目の試み:

SELECT to_float(SUM(Seconds))/-1323 AS Averag;

私にこのエラーを与えます:

 function to_float(bigint) does not exist
36
MAK

cast構文を使用する必要があります。

SELECT CAST (SUM(Seconds) AS FLOAT)/-1323 AS Averag;
46
Mureinik

速記キャスト構文もあります。

SELECT sum(seconds)::float / -1323 AS averag;
67

それは正確なキャストではなく、仕事をするためのトリックです:)、ほぼすべての言語で動作します。

SELECT SUM(Seconds)/-1323.0 AS Averag;

OR

SELECT SUM(Seconds)* 1.0/-1323 AS Averag;

4
Souvik