如何在PostgreSQL中将数据类型从bytea []更改为column的bytea?

时间:2019-11-26 05:30:26

标签: arrays postgresql

我是PostgreSQL的新手。我想在Postgres中将列数据类型之一从bytea[]更改为bytea。我尝试了以下查询,但它给出了错误cannot cast type bytea[] to bytea

ALTER TABLE table_name
ALTER COLUMN COLUMN_NAME TYPE bytea USING COLUMN_NAME::bytea;

有人知道该怎么做吗?

1 个答案:

答案 0 :(得分:0)

这取决于您要保存多少个数组元素。如果足以保存第一个元素:

alter table table_name alter column_name type bytea using column_name[1];

或者您可以连接两个第一元素:

alter table table_name alter column_name type bytea using column_name[1] || column_name[2];

要转换原始列的所有元素,您需要创建一个函数,以连接未知数量的数组元素。