Greenplum:将数据类型BYTEA转换为文本/字符

时间:2014-12-10 07:26:44

标签: greenplum

将数据类型BYTEA转换为文本/字符

时遇到问题
--select pg_catalog.decode('434F4D4D 4F4E', 'hex');

--select pg_catalog.encode('COMMON', 'hex');

--Query Table where col_1 has data type character varying and hex value is inserted

select col_1,pg_catalog.decode(col_1,'hex') from schema.table_1 limit 10

我上面的表格中已经在其中一个列中插入了十六进制值,现在我想更新它,但它给了我错误

错误:列“col_1”的字符类型不同,但表达式的类型为bytea

第1行:更新schema.table_1 set col_1 = pg_c ...

提示:您需要重写或转换表达式。

**********错误**********

--Update Query

update schema.table_1 set col_1 = pg_catalog.decode(col_1,'hex')

请帮助解决此问题

1 个答案:

答案 0 :(得分:0)

在linkedin群上发布相同的问题/查询,并获得一个解决方案

select pg_catalog.encode(pg_catalog.decode('434F4D4D 4F4E', 'hex'), 'escape');

有助于更新十六进制数据,无需进行强制转换。

我尝试用上面的查询更新表,它工作正常

此致