Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
あるテーブルからデータを取得して操作し、SQL クエリを使用して別のテーブルに移動する方法を探しています。
次のようなデータを含む NumberStuff という列があります。
INC000000315482
数値の一部を切り取ってINC整数に変換し、別のテーブルの列に格納して、最終的に次のようにする必要があります。
INC
315482
どんな助けでも大歓迎です!
もう 1 つの方法は、Replace 関数を使用することです。TSQLまたはSSISの派生列式として。
TSQL
SELECT REPLACE(T.MyColumn, 'INC', '') AS ReplacedINC
SSIS
REPLACE([MyColumn], "INC", "")
これにより、文字ベースのデータが削除されます。その後、ターゲット テーブルに格納する前、または暗黙的な変換を行う前に、数値型に変換する際のオプションの演習になります。
必要なものの最も単純なバージョン。
select cast(right(column,6) as int) from table
SSISステートメントでこれを行っていますか?...それは常に最後の6ですか?...
これはフォーマットにあまり依存しません... 0 を削除し、任意の長さにすることができます (最初の 3 文字と先頭の 0 を削除します)。
select cast(SUBSTRING('INC000000315482',4,LEN('INC000000315482') - 3) as int)