2つの列が変更された状態で、いくつかのデータを同じテーブルにコピーして戻すテーブルがあります。
例えば:
TableMusic
titleid musicid tap_id value
1234 1 3 this is music
1324 1 3 this is music test
titleidと値をmusicid=3で同じテーブルに書き戻したい
ここで、インデックス付けされた列はtitleid、musicidです。
次のスクリプトを実行しましたが、エラーが発生しました:一意のインデックス「pk_tablemusic」を使用してオブジェクト「tablemusic」に重複するキー行を挿入しようとしました
insert into tablemusic (titleid, musicid, value )
select titleid, 3, value
from tablemusic
where musicid=1
私はここで何が間違っているのですか?誰かが仕事を成し遂げるためにきれいなスクリプトを思い付くことができますか?
以下は、1つのtitleIDのDBからの抜粋です。
titleid musicid tap_id value
462847 1 3 this is my music value
462847 2 1
462847 3 1
462847 4 1
これはすべてのtitleidで同じです。今、私がやりたいのは、値をmusicid=1からmusicid=3にコピーし、いつかtap_idを3に変更することです。これで、達成したいことが十分に明確になることを願っています。
最終結果は達成したい:
titleidmusicidtap_id値
462847 1 3
462847 2 1
462847 3 3 this is my music value
462847 4 1