Re: What is the best way to merge two disjoint tables?

From: Rodrigo De León <rdeleonp(at)gmail(dot)com>
To: "Chansup Byun" <Chansup(dot)Byun(at)sun(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: What is the best way to merge two disjoint tables?
Date: 2007-09-07 17:32:10
Message-ID: a55915760709071032o3387295cma2bdde5a8ede60f8@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 9/7/07, Chansup Byun <Chansup(dot)Byun(at)sun(dot)com> wrote:
> Can someone show me an example SQL statement?

I suppose you could add a constant, non-overlapping number to add to
the duplicate IDs, say 1000, and then this:

SELECT COALESCE(T1.U_USER, T2.U_USER) AS U_USER
, COALESCE(CASE
WHEN EXISTS(SELECT 1
FROM TABLEB
WHERE U_ID = T1.U_ID
AND U_USER <> T1.U_USER)
THEN T1.U_ID + 1000
ELSE T1.U_ID
END
, T2.U_ID
) AS U_ID
FROM TABLEA T1 FULL JOIN TABLEB T2 ON T1.U_USER = T2.U_USER

will generate a new list of U_USERs and U_IDs.

Good luck.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Guy Rouillier 2007-09-07 18:01:31 Re: an other provokative question??
Previous Message Markus Schiltknecht 2007-09-07 16:48:52 Re: Connection Pooling directly on Postgres Server