That statement takes way too much work for the engine on a large dataset.
This would be better, and way faster. Custnum should be indexed in tran_hist.

Set eqnull on 

edit all from tran_Daily T1 +
WHERE FAILS (SELECT Custnum FROM tran_hist +
  WHERE Custnum = T1.custnum +
  AND date_con = T1.date_con  +
  AND tr_date = T1.tr_date + 
  AND ch_code = T1.ch_code + 
  AND ch_price = T1.ch_price + 
  AND ptest = T1.ptest +
  AND cknum = T1.cknum +
  AND date_frm = T1.date_frm +
  AND date_to = T1.date_to
  AND treat_dr = T1.treat_dr 
  AND inshold = T1.insold )


Dennis McGRath
----------------------------------------------------------------------------------------------------
This is what I am using but it finds no rows, yet my calculations show we are 
missing some rows.
 
  edit all from tran_Daily    +
   WHERE ( CTXT(custnum) + CTXT(date_con) + +
   CTXT(tr_date) + ch_code + CTXT(ch_price) + +
   CTXT(ptest) + cknum +  CTXT(date_frm) + +
   CTXT(date_to) + treat_dr + inshold  ) NOT IN +
   (SELECT ( CTXT(custnum) + CTXT(date_con) + +
   CTXT(tr_date) + ch_code + CTXT(ch_price) + +
   CTXT(ptest) + cknum + CTXT(date_frm) + +
   CTXT(date_to) + treat_dr + inshold)  FROM tran_hist)
 
Thanks for any suggestions
Marc
 


Reply via email to