it-swarm.com.de

Cast-Syntax zum Konvertieren einer Summe in Float

Mit PostgreSQL 9.3 möchte ich die berechneten Werte in den Datentyp float konvertieren.

Mein erster Versuch:

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

Gibt mir diesen Fehler:

syntax error at or near "SUM"

Mein zweiter Versuch:

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

Gibt mir diesen Fehler:

 function to_float(bigint) does not exist
36
MAK

Sie müssen die cast -Syntax verwenden:

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

Es gibt auch die Kurzformsyntax:

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

Es ist kein genaues Casting, sondern ein Trick, den Job zu erledigen :) und funktioniert fast in jeder Sprache.

SELECT SUM (Sekunden)/- 1323.0 AS Averag;

OR

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

4
Souvik