[pgsql-jp: 29417] Re: to_charの結果について

T.Suzuki t_suzuki @ kenwood-eng.co.jp
2003年 3月 14日 (金) 20:59:10 JST


鈴木と申します。

> SELECT TO_CHAR(TO_NUMBER('1999', '9999'), '9999')
>
> とすると、1999 が帰ってきます。しかし、
>
この返ってきた文字列ですが、以下の様に文字列長をみると、
# select length( to_char(to_number('1999', '9999'), '9999') );
 length
-------
      5

5文字となっています。
これは、  to_number('1999', '9999')  が ” 1999” を返しているのが
原因ですので、とりあえず
to_number('1999', 'FM9999') として、余分なスペースを削除するように指定
してあげると、求める結果が得られると思います。
#FMについては、マニュアルを。
#昔、はまったのですが、符号のスペースがとられているのでしょうか?

# select '1999' = to_char(to_number('1999', '9999'), 'FM9999');
 ?column?
-------
  t

これで、一致しました。

 -----------------------------------------
      鈴木 徹 (SUZUKI Toru)
      KENWOOD ENGINEERING CORPORATION
      E-mail:t_suzuki @ kenwood-eng.co.jp
 -----------------------------------------




pgsql-jp メーリングリストの案内