From: Mindaugas Riauba <mind@bi.lt>
To: pgsql-sql@postgresql.org
Subject: SQL syntax
Date: Wed, 31 Jul 2002 15:16:27 +0200
Message-ID: <06d401c23894$7d9b4c00$f20214ac@B027543> (raw)
I have two similar tables with host and services availability
data (Nagios). And I want to find out services which are not OK
in first table and OK in second one. Query I used is:
select c.* from coll_servicestatus as c inner join
servicestatus as s on (c.service_description=s.service_description
and c.host_name=s.host_name) where c.service_status != 'OK' and
s.service_status = 'OK';
Results are fine. But how to write UPDATE statement if I want
to set those non-OK states in first table to OK if they are OK
in the second table?
Something like:
update coll_servicestatus set service_status = 'OK' from
coll_servicestatus as c, servicestatus as s where
c.service_description = s.service_description and c.host_name=s.host_name
and c.service_status != 'OK' and s.service_status = 'OK';
updates all rows not only required ones.
Mindaugas
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: mind@bi.lt
Subject: Re: SQL syntax
In-Reply-To: <06d401c23894$7d9b4c00$f20214ac@B027543>
* 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