将数据类型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')
请帮助解决此问题
答案 0 :(得分:0)
在linkedin群上发布相同的问题/查询,并获得一个解决方案
select pg_catalog.encode(pg_catalog.decode('434F4D4D 4F4E', 'hex'), 'escape');
有助于更新十六进制数据,无需进行强制转换。
我尝试用上面的查询更新表,它工作正常
此致