- ベストアンサー
SQL内でのデータコピー
おはようございます! 今私が扱っているSQLデータであるコラムデータを違うコラムに移行したいのですがその方法が分かりません。 このSQLデータは「顧客」テーブルと言うものがあり、 「顧客」テーブルの「コメント」と言うコラム内データを「ノート」というコラムに移動したいです。 「顧客ID」があるので 「顧客ID」が同じという条件で 「顧客」テーブルの「コメント」内データを、「顧客」テーブルの「ノート」内に移動する 為にはどう言った構文を作成すればよろしいのでしょうか? かなり切羽詰まっているので宜しくお願いします!
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
テーブルの列構成、どの列で行を一意に識別できるのでしょうか? >「顧客ID」があるので「顧客ID」が同じという条件で 同一行内で、「コメント」列の値を「ノート」列に移すのではないという意味ですか? 顧客IDだけでは、テーブル内で行を一意に識別できないなら、行を識別するキーはどうなっているのですか? 同一行での列値の移動といった話なら、例えば次のようなUPDATE文が考えられます。 UPDATE 顧客 SET ノート=コメント ,コメント=NULL -- コメント列の値は、どうしたい? [WHERE 検索条件] 母体データ数、更新対象行が数十万件以上といったレベルなら、更新を複数回に分けるといったことを検討する必要があるかもしれません。 もし、「同一テーブル内の別の行へ」といった話なら、前述の通り、行を対応付けるキー、行進対象行を識別するためのキーがどうなっているか提示してください。 また、自表や他表の検索結果を使っての更新などは、RDBMSによる仕様差があったりします。RDBMS名とバージョンを提示してください。
その他の回答 (1)
- ShowMeHow
- ベストアンサー率28% (1424/5027)
update 顧客 set 顧客.ノート = 顧客.コメント コメントににブランクをセットしたいなら、 update 顧客 set 顧客.コメント = Null をその後に実行。