0
私は長い時間前にExcelからインポートされた番号を格納するnvarchar(255)列を持っています。以下のようなExcel形式番号を数値(10進または浮動小数点数)に変換する方法は?
フォーマット:
7,242
(4,011)
-
(24,120.2)
-
4,234,091
" - " ここに0を意味します。
私は現在、それがとにかく
convert(decimal(18,4),RTRIM(LTRIM(replace(replace(replace(replace([Column a],'-',0),',',''),'(','-'),')',''))))
を10進数に変換するために「置き換える」を使用しています、私はそれは少し愚かだと思います。もっと良い方法?
明確なサンプルと明確なサンプル結果を提供 –
mssql(T-SQL)について話していますか? convert(money、 '1,234,567.8'、1)はフォーマットされた文字列niceを変換します。 convert(money、 ' - '、1)を0に変換すると、結果を任意の数値型に変換できます – vitalygolub