Query is - select customer_id from CUSTOMER w where upper(class_a_customer_id) = upper('CUSTDTH') AND customer_category_cd =1 AND is_user_manager = 2 PLAN_TABLE_OUTPUT - -------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost | -------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 2117 | 50808 | 484 | |* 1 | TABLE ACCESS BY INDEX ROWID| CUSTOMER | 2117 | 50808 | 484 | |* 2 | INDEX RANGE SCAN | NDX_T_CUSTOMER_CLASSACUSTID | 12697 | | 41 | -------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - filter("CUSTOMER"."CUSTOMER_CATEGORY_CD"=1 AND "CUSTOMER"."IS_USER_MANAGER"=2) 2 - access(UPPER("CUSTOMER"."CLASS_A_CUSTOMER_ID")='CUSTDTH') Note: cpu costing is off How can I optimize the query. Please guide me.