Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> update statement tune
Explain plan for the below select is:
select hospital.ADT_FLAG from hospital,unbilled_report
where unbilled_report.hospital_id=hospital.hospital_id and unbilled_report.acct#=hospital.acct# and unbilled_report.mr#=hospital.mr#;
QUERY_PLAN
HASH JOIN HASH JOIN INDEX FAST FULL SCAN SYS_C003868 BITMAP CONVERSION TO ROWIDS BITMAP INDEX FULL SCAN ADT_BITMAP_INDX INDEX FAST FULL SCAN HSP_ID
The below udate statement is running for long time.
update unbilled_report set
ADT_FLAG=(select ADT_FLAG from hospital where unbilled_report.hospital_id=hospital.hospital_id
and unbilled_report.acct#=hospital.acct# and unbilled_report.mr#=hospital.mr# );
HOSPITAL HAS indexing on acct#, mr# (primary key) and hospital_id (non-uniq index) and adt_flag has a bit map index.
the explain plan is like this:
QUERY_PLAN
select hospital.ADT_FLAG from hospital,unbilled_report where unbilled_report.hospital_id=hospital.hospital_id and unbilled_report.acct#=hospital.acct# and unbilled_report.mr#=hospital.mr#;
Can someone help me in tuning this.
Thanks,
Raj
-- http://www.freelists.org/webpage/oracle-lReceived on Wed Oct 26 2005 - 11:04:33 CDT