[pgsql-jp: 27869] Re: 16進数文字列を数値にする方法はありますか?
ISHIDA Akio
iakio @ pjam.jpweb.net
2002年 11月 2日 (土) 20:56:52 JST
こんにちは。石田@苫小牧市です。
On Sat, Nov 02, 2002 at 07:25:01PM +0900, SATO Hiroyuki wrote:
> 佐藤と申します。
>
> 文字型のフィールドに入っている文字列が16進数を表しているとき、
> その文字列を数値型にする方法はありますでしょうか?
> バージョン:postgres (PostgreSQL) 7.2.2
>
> 例えば次のようなデータです。
> ----(↓ここから↓)----
> postgres=# \d t
> Table "t"
> Column | Type | Modifiers
> --------+--------------+-----------
> hex | character(4) |
>
> postgres=# select*from t;
> hex
> ------
> ff
> (1 row)
> ----(↑ここまで↑)----
pg_proc を見てたら get_byte というのを見つけたので、
なんか強引ですが、こんな方法でできるかもしれません。
ishida=> select get_byte(decode('ff', 'hex'), 0);
get_byte
----------
255
(1 row)
--
ISHIDA Akio
pgsql-jp メーリングリストの案内