Hello
When I run the following select statement it takes a long time to return results:
SELECT START.DEPOSIT_DTE,
START.ACCT,
START.NAME,
START.EXPIRE_DTE,
START.PUB,
START.RTE,
START.TO_CC,
START.SWITCH_DTE,
START.START_SWITCH_DTE,
START.AMT_PAID,
START.AMT_CHECKED,
START.ERROR_FOUND,
START.ERROR_MSG,
START.OFFSET_FLAG,
TRANS.CODE,
TRANS.APPLIED_DTE,
TRANS.ENTRY_DTE
FROM START, TRANS
WHERE START.ACCT = TRANS.ACCT
AND (START.DEPOSIT_DTE BETWEEN variable_date_from and variable_date_to)
AND (TRANS.APPLIED_DTE BETWEEN variable_applied_from and variable_applied_to)
AND (variable_include_no_errors='Y' OR START.error_found='Y')
AND TRANS.CODE IN ('AV','AG','AP','AW','MT','PO','PZ','RC','TF','VI')
AND START.PUB = variable_pub
AND ( (TRANS.BATCH_NUM IS NULL) OR (TRANS.BATCH_NUM IS NOT NULL) )
AND TRANS.AMOUNT = -(START.AMT_PAID)
AND START.AMT_PAID = ABS(TRANS.AMOUNT)
GROUP BY START.DEPOSIT_DTE,
START.ACCT,
START.NAME,
START.EXPIRE_DTE,
START.PUB,
START.RTE,
START.TO_CC,
START.SWITCH_DTE,
START.START_SWITCH_DTE,
START.AMT_PAID,
START.AMT_CHECKED,
START.ERROR_FOUND,
START.ERROR_MSG,
START.OFFSET_FLAG,
TRANS.CODE,
TRANS.APPLIED_DTE,
TRANS.ENTRY_DTE
I am thinking that it is the IN clause in the where statement that is causing the slowness.
Would anyone have any idea how to make this more efficient?
Thanks.
getjbb
When I run the following select statement it takes a long time to return results:
SELECT START.DEPOSIT_DTE,
START.ACCT,
START.NAME,
START.EXPIRE_DTE,
START.PUB,
START.RTE,
START.TO_CC,
START.SWITCH_DTE,
START.START_SWITCH_DTE,
START.AMT_PAID,
START.AMT_CHECKED,
START.ERROR_FOUND,
START.ERROR_MSG,
START.OFFSET_FLAG,
TRANS.CODE,
TRANS.APPLIED_DTE,
TRANS.ENTRY_DTE
FROM START, TRANS
WHERE START.ACCT = TRANS.ACCT
AND (START.DEPOSIT_DTE BETWEEN variable_date_from and variable_date_to)
AND (TRANS.APPLIED_DTE BETWEEN variable_applied_from and variable_applied_to)
AND (variable_include_no_errors='Y' OR START.error_found='Y')
AND TRANS.CODE IN ('AV','AG','AP','AW','MT','PO','PZ','RC','TF','VI')
AND START.PUB = variable_pub
AND ( (TRANS.BATCH_NUM IS NULL) OR (TRANS.BATCH_NUM IS NOT NULL) )
AND TRANS.AMOUNT = -(START.AMT_PAID)
AND START.AMT_PAID = ABS(TRANS.AMOUNT)
GROUP BY START.DEPOSIT_DTE,
START.ACCT,
START.NAME,
START.EXPIRE_DTE,
START.PUB,
START.RTE,
START.TO_CC,
START.SWITCH_DTE,
START.START_SWITCH_DTE,
START.AMT_PAID,
START.AMT_CHECKED,
START.ERROR_FOUND,
START.ERROR_MSG,
START.OFFSET_FLAG,
TRANS.CODE,
TRANS.APPLIED_DTE,
TRANS.ENTRY_DTE
I am thinking that it is the IN clause in the where statement that is causing the slowness.
Would anyone have any idea how to make this more efficient?
Thanks.
getjbb