MS SQLをSSISと組み合わせて使用します。ここでは、特定の DocumentID に対してテーブルの行 (ソースと宛先の同じテーブル)をコピーして貼り付け、「subversion」列もインクリメントします。
例:
DocumentID=123 | Location=a | Version=2 |Subversion=4
DocumentID=123 | Location=b | Version=2 |Subversion=4
DocumentID=123 | Location=c | Version=2 |Subversion=4
コピー後:
DocumentID=123 | Location=a | Version=2 |Subversion=5
DocumentID=123 | Location=b | Version=2 |Subversion=5
DocumentID=123 | Location=c | Version=2 |Subversion=5
SSIS 内では、既に max(Subversion) をインクリメントしています (例では 4 から 5 にしています)。必要なのは、データをコピーするための select/insert ステートメントです。
このテーブルには約 150 の列があるため、すべての列をリストしない方法を望んでいましたが、それが可能であったとしても、情報を見つけることができませんでした。
Insert into を Select と組み合わせて試してみましたが、常にエラーで終了しました (集計の問題)。
Insert Into MyTable (AllMyColumns)
select (AllmyColumns)
from MyTable
where DocumentID =123 AND ...
このステートメントを作成するにはどうすればよいですか?
ご協力いただきありがとうございます。