我想从PostgreSQL中的列值返回unicode值。
这可能吗?我怎么办?
示例:
"Renato" : U+0022 U+0052 U+0065 U+006E U+0061 U+0074 U+006F U+0022
我想这样做,因为我想从一些符号和标点符号中发现Unicode,以添加到转换正则表达式以将这些值替换为其他符号。
答案 0 :(得分:5)
获取一个Unicode代码点:
SELECT ascii('ã')
结果:
227
更多in the manual here。引用:
对于UTF8,返回字符的Unicode代码点。
获取字符串的Unicode代码点:
SELECT array_agg(t)
FROM (
SELECT ascii(regexp_split_to_table('Conceição', '')) AS t
) x
如果您想要一个文本字符串作为结果,请使用string_agg
。为此,您必须将值转换为文本。
答案 1 :(得分:0)
您可以一次列出整个范围,而无需将字符输入查询:
select i, chr(i)
from
generate_series(160, 255) s(i)
order by i