From: Stephan Szabo <sszabo@megazone.bigpanda.com>
To: Sean Shanny <shannyconsulting@earthlink.net>
Cc: pgsql-sql@postgresql.org
Subject: Re: Need some help with crafting a query to do major update
Date: Wed, 18 Feb 2004 19:11:08 -0800 (PST)
Message-ID: <20040218190832.H38717@megazone.bigpanda.com> (raw)
In-Reply-To: <4034087C.6090606@earthlink.net>
References: <4034087C.6090606@earthlink.net>
On Wed, 18 Feb 2004, Sean Shanny wrote:
> To all,
>
> This is part of a data warehouse. Made the mistake of using a natural
> key in one of the fact tables. :-( The f_test_pageviews is a simple
> testing table while I work this out. The real table has an identical
> schema.
>
> I have built a mapping table, d_user, to allow the replacement of the
> text based (32 characters wide) subscriber_key in f_test_pageviews with
> an int4 mapping key. I need to replace all of the
> f_test_pageviews.subscriber_key values with the d_user.id value putting
> it in f_test_pageviews.sub_key column.
>
> I have tried this sql:
>
> update f_test_pageviews set sub_key = t2.id from f_test_pageviews t1,
> d_user t2 where t1.subscriber_key = t2.user_id;
I don't think the above does what you want because I don't think you meant
to be joining f_test_pageviews in twice (once as the table to be updated
and once as t1) or at least not without limiting which rows you want to
update.
I think you probably just want:
update f_test_pageviews set sub_key=t2.id from d_user t2 where
f_test_pageviews.subscriber_key=t2.user_id;
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: sszabo@megazone.bigpanda.com, shannyconsulting@earthlink.net
Subject: Re: Need some help with crafting a query to do major update
In-Reply-To: <20040218190832.H38717@megazone.bigpanda.com>
* 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