转换语法以将总和转换为浮点数

时间:2015-02-26 06:55:37

标签: sql postgresql casting type-conversion postgresql-9.3

使用PostgreSQL 9.3,我想将计算值转换为数据类型float

我的第一次尝试:

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

给我这个错误:

syntax error at or near "SUM"

我的第二次尝试:

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

给我这个错误:

 function to_float(bigint) does not exist

3 个答案:

答案 0 :(得分:63)

还有简写演员语法:

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

答案 1 :(得分:41)

您需要使用cast语法:

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

答案 2 :(得分:4)

这不是精确的投射,而是完成工作的技巧:)并且几乎可以用任何语言工作。

  

SELECT SUM(Seconds)/ - 1323.0 AS Averag;

OR

  

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