Tuesday, September 2, 2008

Re: [SQL] order of rows in update

On Tue, Sep 2, 2008 at 2:58 AM, Achilleas Mantzios
<achill@matrix.gatewaynet.com> wrote:
> is there an (implicit) way to make a multirow update execute on some rows prior to other rows?
> It is needed in a case where a trigger is defined on the table as FOR EACH ROW, and it is mandatory
> that the trigger is run for some certain rows before it is run on the rest of the rows.
>
> Is there anything reliable to achieve this without making poor assumptions of the future
> versions, or should i just "SELECT ... ORDER BY ..." and then perform individual UPDATEs?

The only way that I know how to do this is to create a named cursor of
the rows that you want to update, and then for each record call

UPDATE ... FROM ... WHERE CURRENT OF cursorname;


But why are you even having this problem to begin with? What you are
describing sounds like a database normalization problem.


--
Regards,
Richard Broersma Jr.

Visit the Los Angeles PostgreSQL Users Group (LAPUG)
http://pugs.postgresql.org/lapug

--
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql

No comments: