Description
Use the CREATE TABLE AS command to create a table from the contents of result set,
such as a query on a table that already exists within the database. Both the column types, and row data for the new table,
come from the SELECT command specified by select.
Note that, as of PostgreSQL 7.1.x, if you specify the optional column list within parentheses, you cannot use the
asterisk (*) in the select statement.
Example
The following example creates a backup table (aptly named book_backup) from all of the
columns taken from the books table:
booktown=# CREATE TABLE book_backup
booktown-# AS SELECT * FROM books;
SELECT