除了ascii()
以外,是否还有其他PostgreSQL函数可以显示字符的代码点和utf8编码?
ascii()
(顾名思义?)受到限制,如以下示例所示:
字符ą,是带有变音符<的 a ,实际上是两个字符组合成一个字符:
一个\ x61 \(= 97十进制)
一个所谓的组合字符,一个单独的ogonek:̨\ xCC \ xA8
ascii()
不适合这种字符(组合):
select ascii('ą');
ascii
-------
97
97是字符 a 的代码点,因此不会显示ą的完整代码点。
如何获取PostgreSQL中任何字符的代码点和utf8编码,即组合字符也是如此?
答案 0 :(得分:1)
麻烦的是不是 一个字符,而是两个字符的组合,一个a
和一个“组合字符”。虽然这些字符是作为单个字符呈现的,但它们不是。
如果您使用单个字符½(UNICODE代码点261),则不会有此问题。
您将需要将字符组合转换为单个字符(如果可能)的软件,但据我所知PostgreSQL没有这种功能。