Re: Re: [GENERAL] Re: temp table creation

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Bruce Momjian <pgman@candle.pha.pa.us>
Cc: Alfonso Peniche <alfonso@iteso.mx>, PostgreSQL-documentation <pgsql-docs@postgresql.org>
Date: 2001-03-20T17:14:22Z
Lists: pgsql-general
Bruce Momjian <pgman@candle.pha.pa.us> writes:
>>>> This should be in the docs somewhere.  Is it?

Actually, I thought the question was not about whether CREATE TABLE AS
is documented, but about the specific point of it being the thing
to use for this purpose in plpgsql:

>> In that case, how could I create a temporary table from plpgsql?
> CREATE [TEMP] TABLE foo AS SELECT ...
> This is equivalent to SELECT INTO [TEMP] foo in regular SQL, and
> does not change meaning in plpgsql.

I have been thinking that our plain-SQL "SELECT INTO table" construct
should be deprecated (and maybe eventually removed), since it really
doesn't have much to do with the SQL-standard meaning of SELECT INTO:
the spec contemplates INTO as introducing a list of scalar variables to
be assigned to.  plpgsql and ecpg both use this meaning for SELECT INTO.

Would anyone object if I add text to the SELECT INTO ref page that
points this out, and recommends CREATE TABLE AS as the preferred
syntax?

			regards, tom lane