Comment convertir de Double Precision en Bigint avec PostgreSQL?


19

J'ai besoin de convertir une valeur de Double Precision en Bigint avec PostgreSQL. Comment puis je faire ça?

J'ai essayé avec to_bigint(myvalue)mais cette fonction n'existait pas.

Réponses:


33

Il existe deux façons de transtyper dans Postgres:

Soit vous le faites de la manière standard SQL:

select cast(3.141593 as bigint);

ou vous pouvez utiliser l'opérateur de conversion spécifique à Postgres: ::

select (3.141593 :: bigint);

Vous pouvez également envisager les différentes fonctions d'arrondi .


@eevar Juste une note de la documentation, le type de retour des fonctions d'arrondi est "identique à l'entrée", donc si le type est important, les transtypages sont requis.
shortstuffsushi

On dirait CASTqu'en fait l'arrondi
Andrew Wolfe
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.