Skip site navigation (1) Skip section navigation (2)

Query with Dynamic tables

From: solarsail <solarsail(at)gmail(dot)com>
To: pgsql-novice(at)postgresql(dot)org
Subject: Query with Dynamic tables
Date: 2005-10-04 19:18:13
Message-ID: aa44f4a30510041218w5c8541d5v1c6e66a2200fedf2@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-novice
[ i posted this originally to the pgsql-sql list, sorry for cross posting ]

I have a large number of tables with a common naming convention

   mytable001, mytable002, mytable003 ... mytable00n

I would like to do a query across all of the tables, however I do not know
all of the tables before hand, and I do not want to ( cant ) manually
generate a query like

   select * from mytable001, mytable002, mytable003

I have a query that returns the names of the tables I want to query:

   select tablename from pg_tables where tablename like 'mytable%'


 We use the table as a logging repository.  It can get very large 250
000+ records.  Because of the large number of records that we have in
the table we found it was much faster to perform inserts on a smaller
table.  Our current system rolls the tables over  every 12 hours or
so, creating a new table with the following behavior:

      CREATE TABLE mytable_temp {...}

      ALTER TABLE mytable RENAME TO mytable_NNN;
      ALTER TABLE mytable_temp RENAME TO mytable;

 I want to join the mytable_NNN tables together in order to perform
queries against my huge set of data to generate some reports.  I'm
probably going to create a temporary table with a few indexes to make
the reports run faster... however I need to join the tables all
together first.


I know this is possible, because i've done it with postgresql before!

Thanks

Responses

pgsql-novice by date

Next:From: Jaromír KamlerDate: 2005-10-04 19:38:49
Subject: how i can state time of create table??
Previous:From: Andrew BorleyDate: 2005-10-04 15:00:38
Subject: Re: grant select on all tables

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group