create_table_as

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
CREATE TABLE AS()		 SQL Commands		    CREATE TABLE AS()



NAME
       CREATE TABLE AS - create a new table from the results of a query


SYNOPSIS
       CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name [ (column_name [, ...] ) ]
	   AS query


DESCRIPTION
       CREATE  TABLE  AS creates a table and fills it with data computed by a
       SELECT command or an EXECUTE that runs a prepared SELECT command.  The
       table columns have the names and data types associated with the output
       columns of the SELECT (except that you can override the	column	names
       by giving an explicit list of new column names).

       CREATE  TABLE  AS bears some resemblance to creating a view, but it is
       really quite different: it creates a new table and evaluates the query
       just  once  to  fill  the  new table initially. The new table will not
       track subsequent changes to the source tables of the  query.  In	 con-
       trast,  a  view re-evaluates its defining SELECT statement whenever it
       is queried.

PARAMETERS
       TEMPORARY or TEMP
	      If specified, the table is created as a temporary table.	Refer
	      to CREATE TABLE [create_table(7)] for details.

       table_name
	      The  name (optionally schema-qualified) of the table to be cre-
	      ated.

       column_name
	      The name of a column in the new table. If column names are  not
	      provided,	 they  are  taken from the output column names of the
	      query. If the table is created out of  an	 EXECUTE  command,  a
	      column name list can currently not be specified.

       query  A query statement (that is, a SELECT command or an EXECUTE com-
	      mand that runs a prepared	 SELECT	 command).  Refer  to  SELECT
	      [select(7)]   or	EXECUTE	 [execute(l)],	respectively,  for  a
	      description of the allowed syntax.

NOTES
       This   command	is   functionally   equivalent	 to    SELECT	 INTO
       [select_into(7)],  but  it  is preferred since it is less likely to be
       confused with other uses of the SELECT ... INTO syntax.

COMPATIBILITY
       This command is modeled after an Oracle feature. There is  no  command
       with equivalent functionality in the SQL standard. However, a combina-
       tion of CREATE TABLE and INSERT ... SELECT  can	accomplish  the	 same
       thing with little more effort.

SEE ALSO
       CREATE  TABLE [create_table(7)], CREATE VIEW [create_view(l)], EXECUTE
       [execute(l)], SELECT [select(l)], SELECT INTO [select_into(l)]



SQL - Language Statements	  2008-01-03		    CREATE TABLE AS()