Thread: MySQL-style "create temporary table foo select ..."

MySQL-style "create temporary table foo select ..."

From
Geoff Richards
Date:
Hi,

I've got some code that currently uses MySQL, and it copies an existing
table into a temporary one like so:
  create temporary table tmp_foo select * from foo;

That creates 'tmp_foo' with the same columns as 'foo', which is
very convenient.  I can't seem to find any reference to how to do
that with Postgres (and I'd like if possible to ditch MySQL).

Just wondering if anyone has ideas about how to do this?  I'd like
to avoid having to work up a table definition to define the temp
table's columns.

Or maybe I could do some sort of trick with the system catalog tables
to get the column information in a convenient form?
  cheers,     geoff

-- 
Geoff Richards - GBdirect - http://development.gbdirect.co.uk/
tel: 0870 200 7273   sales: 0800 651 0338


Re: MySQL-style "create temporary table foo select ..."

From
Michael Kleiser
Date:
create temporary table tmp_foo AS select * from foo;

Geoff Richards schrieb:
> Hi,
> 
> I've got some code that currently uses MySQL, and it copies an existing
> table into a temporary one like so:
> 
>    create temporary table tmp_foo select * from foo;
> 
> That creates 'tmp_foo' with the same columns as 'foo', which is
> very convenient.  I can't seem to find any reference to how to do
> that with Postgres (and I'd like if possible to ditch MySQL).
> 
> Just wondering if anyone has ideas about how to do this?  I'd like
> to avoid having to work up a table definition to define the temp
> table's columns.
> 
> Or maybe I could do some sort of trick with the system catalog tables
> to get the column information in a convenient form?
> 
>    cheers,
>       geoff
> 



Re: MySQL-style "create temporary table foo select ..."

From
Geoff Richards
Date:
On Wed, Jul 21, 2004 at 05:07:46PM +0200, Michael Kleiser wrote:
> create temporary table tmp_foo AS select * from foo;

Ah, that's a relief, thanks.  Just what I need.  Must have missed it in
the create table syntax.

> Geoff Richards schrieb:
> >Hi,
> >
> >I've got some code that currently uses MySQL, and it copies an existing
> >table into a temporary one like so:
> >
> >   create temporary table tmp_foo select * from foo;
> >
> >That creates 'tmp_foo' with the same columns as 'foo', which is
> >very convenient.  I can't seem to find any reference to how to do
> >that with Postgres (and I'd like if possible to ditch MySQL).
> >
> >Just wondering if anyone has ideas about how to do this?  I'd like
> >to avoid having to work up a table definition to define the temp
> >table's columns.
> >
> >Or maybe I could do some sort of trick with the system catalog tables
> >to get the column information in a convenient form?
> >
> >   cheers,
> >      geoff
> >
> 

-- 
Geoff Richards - GBdirect - http://development.gbdirect.co.uk/
tel: 0870 200 7273   sales: 0800 651 0338