Как я могу конвертировать из Double Precision в Bigint с PostgreSQL?


19

Мне нужно преобразовать значение Double Precision в Bigint с PostgreSQL. Как я могу это сделать?

Я пытался с, to_bigint(myvalue)но эта функция не существует.

Ответы:


33

Существует два способа типизации в Postgres:

Вы либо делаете это стандартным способом SQL:

select cast(3.141593 as bigint);

или вы можете использовать специфический для Postgres оператор приведения: ::

select (3.141593 :: bigint);

Вы также можете рассмотреть различные функции округления .


@eevar Просто примечание из документов, тип возвращаемых функций округления «такой же, как и у ввода», поэтому, если тип важен, требуется приведение типов.
shortstuffsushi

Похоже, на CASTсамом деле делает округление
Эндрю Вулф
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.