首页 > 解决方案 > 如何在 PostgreSQL 9.4 上将 int4range 类型的列转换为整数?

问题描述

我正在尝试将数据类型为 int4range 的列转换为整数,但我收到一条错误消息。我做错了什么或如何将它从 int4range 转换为整数?

这是我正在使用的查询:

ALTER TABLE cat_tipos_cierre ALTER COLUMN idu_tipo_cierre TYPE integer USING idu_tipo_cierre::integer;

这是执行该查询后收到的错误消息:

ERROR:  no se puede convertir el tipo int4range a integer
SQL state: 42846

转换为:错误:int4range 类型无法转换为整数

我正在使用 pgAdmin v.4

标签: postgresqlpostgresql-9.4

解决方案


演示:db<>小提琴

如果表为空,您可以简单地使用为 int 范围定义并给出整数的任何函数,例如lower()

ALTER TABLE cat_tipos_cierre 
ALTER COLUMN idu_tipo_cierre 
    TYPE integer 
    USING lower(idu_tipo_cierre);

推荐阅读