2016-05-18 18 views
0

私はpostgresql to_number(numberString, format_mask)を使いたいです。私のnumberStringは先頭のゼロを含んでいるかもしれません(私はこれらのゼロの実際の長さと合計のnumberStringを知らない)。私はこれらのゼロをトリムし、数値として値を取得したい。Postgresql to_number()関数の形式

私はこの機能hereについて読むと、現在の形式を使用してきました:

select to_number('00005469', '9999999999') 

しかし、「9の長さは、numberStringの長さよりも小さい場合、私は、正しい番号を取得することはできません。 format_maskに '9'という長いリストを書かずにこの作業を行うにはどうすればいいですか?

答えて

2

これにはto_number()は必要ありません。ただ、文字列を整数にキャスト:

select '00005469'::integer; 

または標準SQL使用:簡単です。このような

select cast('00005469' as integer); 
-1

使用を:

to_number(to_char(yournumber, '99'),'99')

+0

コードのみの回答は落胆している彼ら理由彼らがどのように問題を解決するか説明しないでください。この質問がすでに受け入れられている、上書きされた回答について、あなたの答えを更新して、どのように改善するかを説明してください。 [良い答えを書くにはどうすればいいですか](https://stackoverflow.com/help/how-to-answer)をご覧ください。 – FluffyKitten