次のような一時テーブルを使用して、複雑な Oracle ステートメントを最適化しました。
オリジナル:
SELECT data FROM table WHERE ..complex statement..;
最適化されています (< Oracle9i を扱っているため、WITH キーワードは使用できません) :
CREATE GLOBAL TEMPORARY TABLE temptab (x NUMBER, y DATE) ON COMMIT DELETE ROWS;
INSERT INTO temptab SELECT * FROM temp;
SELECT data FROM temptab WHERE ..complex statement..;
COMMIT;
問題は、これらのステートメントを新しいデータベースで実行する必要があることです。一時テーブルを削除して作成するか、存在する場合にのみ切り捨てる方が良いですか? この追加のテーブルをどのように処理できますか?