Kevin Kempter <cs_dba@xxxxxxxxxxxxxxxxxxx> wrote: > update test_one > set f_key = t.f_key > from > upd_temp1 t, > test_one t2 > where > t.id_number = t2.id_number As written above, it is joining the two table references in the FROM clause and updating every row in test_one with every row in the JOIN -- which is probably not what you want. Having a FROM clause on an UPDATE statement is not something which is covered by the standard, and different products have implemented different semantics for that. For example, under MS SQL Server, the first reference in the FROM clause to the target of the UPDATE is considered to be the same reference; so the above statement would be accepted, but do something very different. You probably want this: update test_one t2 set f_key = t.f_key from upd_temp1 t where t.id_number = t2.id_number -Kevin -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance