Re: Normalising an existing table - how?

From: Graham Leggett <minfrin(at)sharp(dot)fm>
To: Phil Endecott <spam_from_postgresql_sql(at)chezphil(dot)org>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Normalising an existing table - how?
Date: 2004-06-24 21:42:40
Message-ID: 40DB4AD0.8040805@sharp.fm
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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
--

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Graham Leggett 2004-06-24 21:45:08 Re: Normalising an existing table - how?
Previous Message Frank Bax 2004-06-24 21:08:06 Re: Normalising an existing table - how?