Bagaimana saya bisa mengkonversi dari Double Precision ke Bigint dengan PostgreSQL?

19

Saya perlu mengkonversi nilai Double Precision ke Bigint dengan PostgreSQL. Bagaimana saya bisa melakukan itu?

Saya sudah mencoba to_bigint(myvalue)tetapi fungsi itu tidak ada.

Jonas
sumber

Jawaban:

33

Ada dua cara untuk mengetik typecast di Postgres:

Anda juga melakukannya dengan cara standar SQL:

select cast(3.141593 as bigint);

atau Anda dapat menggunakan operator pemain Postgres: ::

select (3.141593 :: bigint);

Anda mungkin juga ingin mempertimbangkan berbagai fungsi pembulatan .

eevar
sumber
@eevar Hanya sebuah catatan dari dokumen, fungsi pembulatan tipe pengembalian "sama dengan input," jadi jika jenis ini penting, gips diperlukan.
shortstuffsushi
Sepertinya CASTbenar - benar melakukan pembulatan
Andrew Wolfe