Тип данных Postgres
Моя база данных - Postgres 8. Мне нужно привести тип данных к другому. Это означает, что один из столбцов типа данных varchar
и нужно бросить его в int
с Postgres в SELECT
заявление.
В настоящее время я получаю строковое значение и вливаю его в int
на Яве.
Есть ли способ сделать это? Пример кода будет высоко оценен.
1 ответ
cast(varchar_col AS int) -- SQL standard
или же
varchar_col::int -- Postgres syntax shorthand
Эти варианты синтаксиса действительны (почти) везде. Исключение для второго:
Есть еще два варианта:
int4(varchar_col) -- only works for some type names
int '123' -- must be an untyped, quoted string literal
Обратите внимание, как я написал int4
(varchar_col)
, Это внутреннее имя типа, и для него также определена функция. Не будет работать как integer()
или же int()
,
Подробности в руководстве здесь и здесь.
Быть действительным для integer
строка должна состоять из необязательного начального знака (+
/ -
) с последующими только цифрами. Ведущий / конечный пробел игнорируется.