Postgres数据类型转换

Déb*_*ora 27 java sql postgresql casting

我的数据库是Postgres 8.我需要将数据类型转换为另一个.这意味着,列数据类型之一是varchar并且需要intSELECT语句中将其转换为Postgres .

目前,我获取字符串值并将其转换int为Java.
有什么办法吗?示例代码将受到高度赞赏.

Erw*_*ter 51

cast(varchar_col AS int)  -- SQL standard
Run Code Online (Sandbox Code Playgroud)

要么

varchar_col::int          -- Postgres syntax shorthand
Run Code Online (Sandbox Code Playgroud)

这些语法变体在几乎任何地方都有效.第二种可能需要在特殊情况下嵌套括号:

还有两个变种:

int4(varchar_col)         -- only works for some type names
int '123'                 -- must be an untyped, quoted string literal
Run Code Online (Sandbox Code Playgroud)

请注意我的写作方式.这是内部类型名称,还有为其定义的函数.不会起作用或.int4(varchar_col)integer()int()

手册中的详细信息在此处此处.

为了有效int[] '{1,2,3}',字符串必须由可选的前导符号('{1,2,3}'::int[]/ cast('{1,2,3}' AS int[]))后跟数字组成.前导/尾随空格被忽略.