1つの "CREATE TABLE AS"ステートメントでプライマリキーを設定する方法はありますか?
例-次の記述を2文ではなく1文で作成したい
CREATE TABLE "new_table_name" AS SELECT a.uniquekey, a.some_value + b.some_value FROM "table_a" AS a, "table_b" AS b WHERE a.uniquekey=b.uniquekey;
ALTER TABLE "new_table_name" ADD PRIMARY KEY (uniquekey);
一般的にこれを行うより良い方法はありますか(2つ以上のテーブルがあると仮定してください、例えば10)?
別のテーブルと同じテーブル構造で新しいテーブルを作成する場合は、次のように1つのステートメントでこれを行うことができます(新しいテーブルの作成と主キーの設定の両方)。
create table mytable_clone (like mytable including defaults including constraints including indexes);
いいえ、テーブルと主キーを作成する簡単な方法はありません。