5

次のchar(12)ようなデータを含む列があります。

000000004012
000000615737
000000000012
000000000100

そして、これを次のように変換する必要があります。

4012
615737
12
100

私の最初の考えは、CHARINDEX などの文字列操作を使用することです。ただし、最初に出現する を左から右に検索する必要がありNOT 0ます。SQL Server でこれを実現するにはどうすればよいですか?

4

2 に答える 2

12

ところで、なぜそのデータを に保存したのcharですか? しかし、あなたの質問に答えるには、これを試してください。

SELECT CAST(colName AS INT)

また

SELECT CAST('999999999999' AS NUMERIC(12,0))

SQLFiddle デモ

于 2012-09-27T13:40:53.370 に答える
4

数値データについて話す場合は、cast(column as int)または他の数値データ型として十分です。

于 2012-09-27T13:41:35.747 に答える