- ベストアンサー
MSSQL データコピー
こんばんは。 さっそくですが、質問します。 SQL Server 2005を使用しています。 ある一つのテーブルにデータが下記のようになっています。 カラムA カラムB カラムC テスト テスト2 テスト3 テスト4 カラムAとカラムBの中にテスト~テスト4のデータがあります。カラムAのテストとテスト3をコピーし、「C」のカラムにテスト、テスト3をinsertするにはどのようにしたらよろしいでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
UPDATEを使用し、カラムCにカラムAの値が入るような更新クエリを作ればよいのでは? それとも何か問題を読み違えてるかなあ…
その他の回答 (2)
- neko_noko
- ベストアンサー率45% (146/319)
No1です。 >下記は、どのような意味でしょうか? >「正規化されていないのが気になりますが。。。」 簡単に言うと、「コンピュータにとって扱いやすい形」にテーブルを整理すること。 人間にとって扱いやすいのはExcelの表のような形式だけど、 コンピュータが処理する場合、区分や性別のように同じようなデータが並んでるフィールドがあると、 処理が遅くなったりデータベースサイズが大きくなったりする。 そういうのをまとめて処理速度を速めたり、サイズが肥大化するのを抑えるのが正規化。 他にもメリットはあるので、詳しくは調べてみてください。 データベースの基礎であり、正しく行うのが最も難しいものの1つでもある。 小規模なデータベースなら正規化していないものでも問題ないと思うけど、 大規模なデータベースを作っていく場合、絶対に避けては通れない。 SQL Serverや他のデータベースともう少し付き合っていくつもりなら、 勉強しておいた方がいいと思います。
補足
ありがとうございます。 勉強になりました。 これから調べます。
- chukenkenkou
- ベストアンサー率43% (833/1926)
正規化されていないのが気になりますが。。。 各行のカラムAの値を、カラムCにコピーするなら、insertでなくupdateで行なえます。 update 表名 set カラムC=カラムA
お礼
ありがとうございます。 教えて頂いた通りで、解決致しました。 下記は、どのような意味でしょうか? 「正規化されていないのが気になりますが。。。」
お礼
教えて頂いた通りで無事に、解決致しました。 ありがとうございます。