Hilary Forbes wrote:
I need to set the value of a field in table A to a value in table B depending on the existence of the record in table B. So what I have done is UPDATE tableA set a.val1=b.somefield FROM tableA a, tableB b WHERE a.key1=b.key1;
Check the EXPLAIN carefully, are you sure the tableA in "UPDATE" is the same as that in your "FROM" clause. If so, why are you SETting a.val1?
If not, you've probably got an unconstrained join. -- Richard Huxton Archonet Ltd ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match