Help with UPDATE syntax

From: Jeff Putsch <putsch(at)mxim(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: Help with UPDATE syntax
Date: 2001-03-15 06:47:29
Message-ID: 20010314224729.A16150@blue.mxim.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Howdy,

I am porting a bit of code from ORACLE to PostgreSQL 7.1 and am getting stuck on
an update statment. I am NOT a SQL expert, merely a beginner swimming hard,
so any help will be greatly appreciated. The specific query looks like this:

begin transaction

update
user_group_map map
set
user_id = 4
where
user_id = 9
not exists (
select * from
user_group_map
where
user_id = 4 and
group_id = map.group_id and
role = map.role
)

commit

There are other updates taking place during the transaction, but this is the
one for which I can't figure out the PostgreSQL equivalent.

I've tried this:

update
user_group_map
set
user_id = 4
from user_group_map map
where
user_id = 9 and
not exists (
select * from
user_group_map ug2
where
user_id = 4 and
ug2.group_id = map.group_id and
ug2.role = map.role);

for the update replacement, but get an error:
NOTICE: current transaction is aborted, queries ignored
until end of transaction block

As noted earlier, any guidance will be most appreciated.

Thanks,

Jeff.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Richard Huxton 2001-03-15 07:39:18 Re: need to join successive log entries into one
Previous Message Josh Berkus 2001-03-15 05:04:29 Re: PIVOT of data