プロが教える店舗&オフィスのセキュリティ対策術

こんばんは。
さっそくですが、質問します。
SQL Server 2005を使用しています。
ある一つのテーブルにデータが下記のようになっています。 
 カラムA   カラムB     カラムC
 テスト    テスト2  
テスト3    テスト4

カラムAとカラムBの中にテスト~テスト4のデータがあります。カラムAのテストとテスト3をコピーし、「C」のカラムにテスト、テスト3をinsertするにはどのようにしたらよろしいでしょうか? 
よろしくお願いします。 

A 回答 (3件)

UPDATEを使用し、カラムCにカラムAの値が入るような更新クエリを作ればよいのでは?


それとも何か問題を読み違えてるかなあ…
    • good
    • 0
この回答へのお礼

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

お礼日時:2007/10/17 18:18

No1です。



>下記は、どのような意味でしょうか?
>「正規化されていないのが気になりますが。。。」 

簡単に言うと、「コンピュータにとって扱いやすい形」にテーブルを整理すること。
人間にとって扱いやすいのはExcelの表のような形式だけど、
コンピュータが処理する場合、区分や性別のように同じようなデータが並んでるフィールドがあると、
処理が遅くなったりデータベースサイズが大きくなったりする。
そういうのをまとめて処理速度を速めたり、サイズが肥大化するのを抑えるのが正規化。
他にもメリットはあるので、詳しくは調べてみてください。

データベースの基礎であり、正しく行うのが最も難しいものの1つでもある。
小規模なデータベースなら正規化していないものでも問題ないと思うけど、
大規模なデータベースを作っていく場合、絶対に避けては通れない。
SQL Serverや他のデータベースともう少し付き合っていくつもりなら、
勉強しておいた方がいいと思います。

この回答への補足

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

補足日時:2007/10/23 14:24
    • good
    • 0

正規化されていないのが気になりますが。

。。

各行のカラムAの値を、カラムCにコピーするなら、insertでなくupdateで行なえます。

update 表名
set カラムC=カラムA
    • good
    • 0
この回答へのお礼

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

下記は、どのような意味でしょうか?
「正規化されていないのが気になりますが。。。」 

お礼日時:2007/10/17 18:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!