Global Temporary Tables

Global Temporary Tables are a feature from Oracle 8i. The tables are managed by the database server. They hold data which is private per session. The data is automatically deleted at the end of the session.

These tables can improve query speed. This is because there is no redo or rollback information collected. They also prevent private data sets from interfering with each other. You can consider these tables the ultimate work tables.

Tom Kyte advises against their use. However there is a difference between a temp table and a global temporary table. A temp table is one you create on the fly to do some complex work on. These global temporary tables are permanent tables which users can only see a portion of the data.