update ivinvt set allocated = allocated + c_chng.chng from ivinvt JOIN c_chng ON ivinvt.k_ivinvt = c_chng.k_ivinvt>I am having a problem with the SQL Update below. From the amount of time it takes to run with only 1 or 2 records in the cursor c_chng I believe it is ignoring the index on k_ivinvt and scanning all 186K recs in the inventory table IVINVT. The last time I had this problem was on updating invoice lines and I fixed it by adding a 2nd line to the where clause to include the invoice key. This time there is no other index I can use. The two tables are tied only by the ivinvt.k_ivinvt = c_chng.k_ivinvt. This has got to be a really common event so I know I am missing something here.
set enginebehavior 90 > >* Update inventory allocated amounts >TEXT TO mSqlCommand noshow pretext 15 > update ivinvt > set allocated = allocated + c_chng.chng > from c_chng > where ivinvt.k_ivinvt = c_chng.k_ivinvt >ENDTEXT >&mSqlCommand