Hello everyone

I must be doing something very wrong here so help please!  I have two tables

tableA has 300,000 recs
tableB has 20,000 recs

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;

The primary key of tableA is key1 and that of tableB is key1 ie the join is on 
primary keys.

The "optimizer" has elected to d a sequential scan on tableA to determine which 
fields to update rather than the query being driveb by tableB and it is taking 
forever.  Surely I must be able to force the system to read down tableB in 
preference to reading down tableA?

(Please don't ask why tableA and tableB are not amalgamated - that's another 
story altogether!!!)

Many thanks in advance
Hilary


Hilary Forbes
The DMR Information and Technology Group  (www.dmr.co.uk)
Direct tel 01689 889950 Fax 01689 860330 
DMR is a UK registered trade mark of DMR Limited
**********************************************************


---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to