CREATE TABLE AS SELECT
既存のテーブルのカラムをコピーして、既存のテーブルからテーブルを作成します。新しいテーブルには、既存のテーブルのレコードが入力されます。
既存のテーブルのコピーとして TEMPORARY テーブルを作成します。
構文
CREATE TABLE table-name AS QUERY_EXPRESSION
CREATE TABLE new_table
AS (SELECT * FROM old_table) ;
備考
|
•
|
QUERY_EXPRESSION は、ORDER BY または LIMIT 句のない任意の選択クエリにすることができます。 |
|
•
|
一時テーブルは最初のアクセスでは空ですが、オプションで、ON COMMIT 句を使用して COMMIT ごとに空の状態に戻すことができます。一時テーブルは、ユーザー セッションの終了時にサーバーによって自動的にクリーンアップされます。セッションの間に必要に応じて明示的に削除することもできます。 |
|
•
|
ほとんどのクエリが特定のデータベースに対して行われている場合、特定の一時テーブル ストレージの場所を使用すると、一時テーブルと永続テーブルの Join のパフォーマンスが向上する可能性があります。DDL コンテナが設定されている場合、一時テーブル コンテナに関連付けられた権限は、一時テーブルを作成および使用できるユーザーに影響します。一時テーブルの保存場所は、Studio で一時テーブル コンテナ構成パラメーターを編集することで変更できます。 |
|
•
|
CREATE TEMPORARY TABLE ステートメントは、TDV Studio ではサポートされていません。これらは、DDL マッピングで構成されたパブリッシュされたデータ サービスに接続する TDV JDBC/ODBC/ADO.NET クライアントによってのみ使用されることを意図しています。 |
例
CREATE TABLE queenbee
AS (SELECT * FROM babybee);