从 PostgreSQL 中的文本字段获取 ascii 字节
Getting ascii bytes from text field in PostgreSQL
我们希望在 PostgreSQL 中使用 ascii 将文本字段转换为字节。
示例:
"table" = t:116*1 (1 being first position) + a:97*2(2 being second
position) + b: 99*3, etc.
仅select ascii([text field])
returns 第一个字母的 ascii 字节。
如果你只是想要一个bytea
值对应于字符串的字节序列,你可以使用:
SELECT convert_to('åbçd€','SQL_ASCII')
如果这不是您要找的东西,您可以转换为一组代码点,然后从那里,您可以用它做任何您想做的事:
SELECT ascii(c) FROM regexp_split_to_table('åbçd€','') s(c)
请注意,它们处理非 ASCII 字符的方式非常不同。假设一个 UTF8 编码的数据库,convert_to('å','SQL_ASCII')
会给你多个 UTF8 代码单元,而 ascii('å')
returns 一个单一的 Unicode 代码点。
我们希望在 PostgreSQL 中使用 ascii 将文本字段转换为字节。
示例:
"table" = t:116*1 (1 being first position) + a:97*2(2 being second position) + b: 99*3, etc.
仅select ascii([text field])
returns 第一个字母的 ascii 字节。
如果你只是想要一个bytea
值对应于字符串的字节序列,你可以使用:
SELECT convert_to('åbçd€','SQL_ASCII')
如果这不是您要找的东西,您可以转换为一组代码点,然后从那里,您可以用它做任何您想做的事:
SELECT ascii(c) FROM regexp_split_to_table('åbçd€','') s(c)
请注意,它们处理非 ASCII 字符的方式非常不同。假设一个 UTF8 编码的数据库,convert_to('å','SQL_ASCII')
会给你多个 UTF8 代码单元,而 ascii('å')
returns 一个单一的 Unicode 代码点。