0

あるテーブルからデータを取得して操作し、SQL クエリを使用して別のテーブルに移動する方法を探しています。

次のようなデータを含む NumberStuff という列があります。

INC000000315482

数値の一部を切り取ってINC整数に変換し、別のテーブルの列に格納して、最終的に次のようにする必要があります。

315482

どんな助けでも大歓迎です!

4

2 に答える 2

0

もう 1 つの方法は、Replace 関数を使用することです。TSQLまたはSSISの派生列として。

TSQL

SELECT REPLACE(T.MyColumn, 'INC', '') AS ReplacedINC

SSIS

REPLACE([MyColumn], "INC", "")

これにより、文字ベースのデータが削除されます。その後、ターゲット テーブルに格納する前、または暗黙的な変換を行う前に、数値型に変換する際のオプションの演習になります。

于 2013-10-05T19:53:27.943 に答える
0

必要なものの最も単純なバージョン。

select cast(right(column,6) as int) from table

SSISステートメントでこれを行っていますか?...それは常に最後の6ですか?...

これはフォーマットにあまり依存しません... 0 を削除し、任意の長さにすることができます (最初の 3 文字と先頭の 0 を削除します)。

select cast(SUBSTRING('INC000000315482',4,LEN('INC000000315482') - 3) as int)
于 2013-10-04T20:55:54.530 に答える