- ベストアンサー
プライマリキーのみを変更して、複数行insertする方法
こんにちは。 oracle(9i)のテーブルにinsertを行おうと思っているのですが、 困っているので質問させていただきます。 Aテーブルに5カラムあるとします。 カラム1はプライマリキーです。 例えば、1レコードが下記のようになっているとします。 カラム1 カラム2 カラム3 カラム4 カラム5 ---------------------------------------------- 001 あああ いいい ううう えええ プライマリキーに1を足して、他のカラム2から5までは同様の内容で insetをしたいと思っています。 つまり、下記のようなレコードになります。 002 あああ いいい ううう えええ 003 あああ いいい ううう えええ このようにプライマリキーのみを変更して200レコードくらいを insertしたいと思いますが、どのようにすればよいでしょうか。 できれば、PL/SQLかSQLのスクリプトで実行したいと思います。 ご存知の方、ご教授願います。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
create table aaa ( "カラム1" number(10), "カラム2" varchar2(10), "カラム3" varchar2(10), "カラム4" varchar2(10), "カラム5" varchar2(10) ); insert into aaa ("カラム1", "カラム2", "カラム3", "カラム4", "カラム5") select rownum, 'あああ', 'いいい', 'ううう', 'えええ' from dict where rownum <= 200 ; 200行が作成されました。 200行以上の行があるテーブルやビューを利用して、 更にrownum疑似列でナンバリングしてあげれば一発で作成可能です。
その他の回答 (1)
- okg00
- ベストアンサー率39% (1322/3338)
http://rina.jpn.ph/~rance/om/oracle/hosoku12.html 順序を使うか、SQLで工夫してみてください。
お礼
ご回答ありがとうございます。 確認してみます。
お礼
ご回答ありがとうございます。 出来ました。