1

PostgreSQL で ascii を使用してバイトに変換したいテキスト フィールドがあります。

例:

"table" = t:116*1 (1 番目の位置) + a:97*2 (2 番目の位置) + b: 99*3 など。

実行すると、最初の文字のASCIIselect ascii([text field])バイトのみが返されます。

4

1 に答える 1

3

文字列のバイト シーケンスに対応する値だけが必要な場合は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('å')、単一の Unicode コードポイントが返されます。

于 2016-02-10T22:17:31.630 に答える