From: Phil Endecott <spam_from_postgresql_sql@chezphil.org>
To: Graham Leggett <minfrin@sharp.fm>
To: pgsql-sql@postgresql.org
Subject: Re: Normalising an existing table - how?
Date: Thu, 24 Jun 2004 16:55:47 -0400
Message-ID: <7184150@chezphil.org> (raw)
In-Reply-To: <40DB229C.9040306@sharp.fm>
References: <40DB229C.9040306@sharp.fm>
Graham Leggett wrote:
> I have an existing table containing a column in it containing
> a money value. I would like to normalise this column into a
> separate table, as the money value is to be expanded to contain
> a tax value, etc.
>
> I have been trying to find a SQL query that will do the
> following:
>
> - 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?
--Phil.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: spam_from_postgresql_sql@chezphil.org, minfrin@sharp.fm
Subject: Re: Normalising an existing table - how?
In-Reply-To: <7184150@chezphil.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox