• ベストアンサー

MSSQL データコピー

こんばんは。 さっそくですが、質問します。 SQL Server 2005を使用しています。 ある一つのテーブルにデータが下記のようになっています。   カラムA   カラムB     カラムC  テスト    テスト2   テスト3    テスト4 カラムAとカラムBの中にテスト~テスト4のデータがあります。カラムAのテストとテスト3をコピーし、「C」のカラムにテスト、テスト3をinsertするにはどのようにしたらよろしいでしょうか?  よろしくお願いします。 

質問者が選んだベストアンサー

  • ベストアンサー
  • neko_noko
  • ベストアンサー率45% (146/319)
回答No.1

UPDATEを使用し、カラムCにカラムAの値が入るような更新クエリを作ればよいのでは? それとも何か問題を読み違えてるかなあ…

sadoru
質問者

お礼

教えて頂いた通りで無事に、解決致しました。 ありがとうございます。

その他の回答 (2)

  • neko_noko
  • ベストアンサー率45% (146/319)
回答No.3

No1です。 >下記は、どのような意味でしょうか? >「正規化されていないのが気になりますが。。。」  簡単に言うと、「コンピュータにとって扱いやすい形」にテーブルを整理すること。 人間にとって扱いやすいのはExcelの表のような形式だけど、 コンピュータが処理する場合、区分や性別のように同じようなデータが並んでるフィールドがあると、 処理が遅くなったりデータベースサイズが大きくなったりする。 そういうのをまとめて処理速度を速めたり、サイズが肥大化するのを抑えるのが正規化。 他にもメリットはあるので、詳しくは調べてみてください。 データベースの基礎であり、正しく行うのが最も難しいものの1つでもある。 小規模なデータベースなら正規化していないものでも問題ないと思うけど、 大規模なデータベースを作っていく場合、絶対に避けては通れない。 SQL Serverや他のデータベースともう少し付き合っていくつもりなら、 勉強しておいた方がいいと思います。

sadoru
質問者

補足

ありがとうございます。 勉強になりました。 これから調べます。 

回答No.2

正規化されていないのが気になりますが。。。 各行のカラムAの値を、カラムCにコピーするなら、insertでなくupdateで行なえます。 update 表名 set カラムC=カラムA

sadoru
質問者

お礼

ありがとうございます。 教えて頂いた通りで、解決致しました。  下記は、どのような意味でしょうか? 「正規化されていないのが気になりますが。。。」 

関連するQ&A