こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

レコードのコピーについて

PostgreSQLで質問があります。
table_Aの内容をtable_Bにコピーしたいと考えています。
create table table_B as select * from table_A;
だと、table_Aのフィールドでserial型を使用しているため、
integerになってしまいます。
できれば上記以外でかつ、table_Bは既に作成されて
いる状態でコピーを行いたいと考えています。

insert into table_b as select * from table_A;
とかでできるんでしょうか?
それとも他にいい案があるのでしょうか?

確認する環境がないのでわからないのですが、
どなたかご存知の方、お願い致します。

投稿日時 - 2003-11-05 10:21:35

QNo.697486

すぐに回答ほしいです

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

それをやるのでしたらinsert文でいいのですが、

insert into table_b select * from table;

ですね。
create文とは違って、insert文ではselectの前に"as"を入れないのがSQLの規格です。PostgreSQLでもこれで通る筈ですよ。

参考URL:http://osb.sra.co.jp/PostgreSQL/Manual/PostgreSQL-7.1-ja/sql-insert.html

投稿日時 - 2003-11-05 12:03:36

お礼

回答ありがとうございました。
問題なくできました。

投稿日時 - 2003-11-05 13:23:09

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)