1

約 20K 行のデータを含むテーブルがあります。1 つの varchar 列には、$xxx,xxx,xxx.00 の形式で通貨情報が含まれています。10 進数型の追加の列を作成し、そこに varchar データをコピーしたいと思います。明らかに $ と , を取り除きます。

私はキャストと変換を試し、トリムと置換関数を混ぜましたが、これを新しい列に入れることにまだ成功していません。

データに対して将来の多くの計算を行うため、計算ごとに変換するのではなく、一度変換する必要があります。

どんな提案でも大歓迎です!

前もって感謝します!

--ケント

4

2 に答える 2

1

$ と ',' を置き換えてから変換してみてください。あなたは良いはずです

CONVERT(NUMERIC(28,4),REPLACE(REPLACE(stringColumn,'$',''),',',''))

ここでSQLフィドル。

于 2013-06-13T18:54:24.770 に答える
0
 Select Cast(Replace(Replace(ColName, '$', ''), ',', '') as Money)
于 2013-06-13T18:54:34.070 に答える