Postgres数据类型转换
我的数据库是Postgres 8.我需要将数据类型转换为另一个。 这意味着,列数据类型之一是varchar
,需要在SELECT
语句中将其与Postgres一起转换为int
。
目前,我获取字符串值并将其转换为Java中的int
。
有什么办法吗? 示例代码将受到高度赞赏。
cast(varchar_col AS int) -- SQL standard
要么
varchar_col::int -- Postgres syntax shorthand
这些语法变体在几乎任何地方都有效。 第二个例外:
- PostgreSQL:在所有表字段的长度上创建索引
还有两个变种:
int4(varchar_col) -- only works for some type names int '123' -- must be an untyped, quoted string literal
注意我是如何编写int4
(varchar_col)
。 这是内部类型名称,还有为其定义的函数。 不能用作或integer()
。 int()
手册中的详细信息在这里和这里 。
要对integer
有效,该字符串必须由可选的前导符号( +
/ -
)后跟数字组成。 前导/尾随空格被忽略。