Re: order of multiple assignments in UPDATE

From: "Ossie J(dot) H(dot) Moore" <ossie(dot)moore(at)home(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: order of multiple assignments in UPDATE
Date: 2001-04-29 05:30:34
Message-ID: 9chd4p$1vlq$1@news.tht.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

While I'm not sure specificly which order they will be determined
in, it has no effect on what the value of "c1" will be. The value
of "c1" will be 10 minus the value of "c2" where "c2" equals the
value it was before the update occurred. For exmple...

1. Assume you create the following table...

create table temp
(
c1 int2
, c2 int2
, c3 int2
);

2. Insert the following row...

insert into temp values (1,1,1);

3. Execute the following update command...

update temp
set c1 = (10-c2)
, c2 = 5
, c3 = (10-c2);

4. Execute the following select...

select * from temp;

5. Observe the following output...

c1 c2 c3
== == ==
9 5 9

You will note that both c1 and c3 equal 10 - 1. Neither equals
10-5. To make the value 10 - {the value after the update},
you would need to set the value to c1/c3 equal to the value of
10 - {the expression used to assign value to c2}. In the
example above, your update statement would be...

update temp
set c1 = ( 10 - (5) )
, c2 = (5)
, c3 = ( 10 - (5) );

In article <Pine(dot)LNX(dot)4(dot)21(dot)0104281846010(dot)233-100000(at)presario>,
anuradha(at)gnu(dot)org wrote:

>
> If I have a query
>
> UPDATE tablename SET c1 = 10 - c2, c2 = 4 where ...
>
> will the two assignments be evaluated from left to right?
>
> Thanks in advance.
>
> Anuradha
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> message can get through to the mailing list cleanly

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Peter Mount 2001-04-29 10:11:23 Re: HELP : Can't load JDBC driver !
Previous Message Justin Clift 2001-04-29 05:20:23 Re: JDBC speed question.