Re: Normalising an existing table - how? - Mailing list pgsql-sql

From Graham Leggett
Subject Re: Normalising an existing table - how?
Date
Msg-id 40DB4AD0.8040805@sharp.fm
Whole thread Raw
In response to Re: Normalising an existing table - how?  ("Phil Endecott" <spam_from_postgresql_sql@chezphil.org>)
Responses Re: Normalising an existing table - how?  ("Phil Endecott" <spam_from_postgresql_sql@chezphil.org>)
List pgsql-sql
Phil Endecott wrote:

>>- Select the money column from the table
>>- Populate the new normalised table with each row containing
>>  the value from the original money column
>>- Write the primary keys of the new rows in the normalised
>>  table, back to a new column in the original table added for
>>  this purpose.

> Change the order.  Do the third step first:
> 
> alter table T add column X integer;
> update T set X = nextval(somesequence);
> 
> Now do the first and second steps together:
> 
> select X, MoneyColumn from T into NewTable;
> 
> Is this the sort of thing you need?

I think it is - though the select foo into NewTable part, does NewTable 
have to be empty first, or can it already exist?

In my case NewTable has some rows in it already, as the database is 
currently partially normalised - I need to finish the job.

Regards,
Graham
--


pgsql-sql by date:

Previous
From: Frank Bax
Date:
Subject: Re: Normalising an existing table - how?
Next
From: Graham Leggett
Date:
Subject: Re: Normalising an existing table - how?