公式アカウントからの投稿が始まります

Ver8.3.3
現行のテーブルの値を、別テーブルへ移行したいのですが、
コーディングのしかたが良く解りません。

ex)
Aテーブル
ID 
ビット合計1
ビット合計2

Bテーブル
ID 
ビット合計データ種別
ビット合計

1レコードの物を、2レコードに変換する具合です。

サンプル等が記載されているサイト等を教えて頂ければ幸いです。

宜しくお願い致します。

A 回答 (3件)

テーブルAとBは、同じサーバにあるのでしょうか?


CSVファイルなどの媒介は、必要ないのでしょうか?

データ件数は、どのくらいあるのでしょう?
insert ~ selectの1文で可能なのですが、ストアドプロシジャでやりたいでしょうか?
データ件数が多量の場合、select文で条件検索し、何回かに分割して行うこともできます。

insert into B
select id,1,bsum1 from A
union
select id,2,bsum2 from A

この回答への補足

ストアドプロシジャを使用しないと出来ないと思っていました。
1文で可能なら言うこと無いです。

2つのテーブルは、同一サーバにあります。
CSVファイルの媒介は不要です。
レコード数は、約5万レコードです。
実際は、1レコードを5分割します。

補足日時:2009/02/21 15:56
    • good
    • 0
この回答へのお礼

chukenkenkouさん、レス有難う御座います。

お礼日時:2009/02/23 14:08

具体的なアドバイスが欲しいなら、具体的な質問にしましょう。



Aテーブルでは、ID列でユニークになるのですか?
Bテーブルでは、同じID列値を持つ行ができる訳ですよね?
「ID」列と「ビット合計データ種別」で、ユニークになるのですか?

「ビット合計データ種別」には、「ビット合計1」か「ビット合計2」かを識別する値が入るのですよね?アドバイスする側で推測しろっていうのは乱暴で、無駄なやり取りをしてしまうこともあります。

この回答への補足

早々のレス有難う御座います。
>アドバイスする側で推測しろっていうのは・・・
そういうつもりではなかったのですが、説明不足でした。

ID列は、ユニークキーです。
ID列 + ビット合計データ種別で、ユニークです。
単純に1レコードの物を、2レコードに分割したいのです。

COBOL、PL/1、RPG、VB、C、JAVA、ABAP4等にて分割しても良いのですが、SQLのプロシージャ言語を用いて分割したいのです。

補足日時:2009/02/21 15:14
    • good
    • 0
    • good
    • 0
この回答へのお礼

nora1962さん、早々のレス有難う御座いました。

お礼日時:2009/02/23 14:06

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

関連するカテゴリからQ&Aを探す