Plan shows SQL execution Hrs 999:59:59 Sec.
Dear masters,My development team announced today that the query below takes more time. When I check the plan for my shok show Hrs 999:59:59 Sec.
Kindly help me for this query setting.
I use the oracle 10.2.0.3 version.
SELECT
S_INVLOC.NAME , S_ORDER.ACCNT_ID , S_ORDER.APPR_BY_EMP_ID , S_ORDER.BL_CON_ID , S_ORDER.BL_OU_ID , S_ORDER.CARRIER_CD , S_ORDER.CONTACT_ID , S_ORDER.CURCY_CD , S_ORDER.TAX_EXEMPT_FLG ,
S_ORDER.REQ_SHIP_DT , S_ORDER.SHIP_ADDR_ID , S_ORDER.SHIP_CON_ID , S_ORDER.SHIP_METH_CD , S_ORDER.SHIP_OU_ID , S_ORDER.STATUS_CD , S_ORDER.TAX_EXEMPT_NUM , S_ORDER.TAX_EXEMPT_REASON ,
S_ORDER.OPTY_ID , S_ORDER.BU_ID PR_VIS_ORG_ID , S_ORDER.PROMO_ID , S_ORDER.PRI_LST_ID , S_ORDER.AGREE_ID AGREEMENT_ID , S_ORDER.ENTLMNT_ID ENTITLEMENT_ID , S_ORDER.SR_ID ,
S_ORDER.BILLABLE_FLG , S_ORDER_ITEM.ROW_ID , S_ORDER_ITEM.ORDER_ID , S_ORDER_ITEM.LN_NUM , S_ORDER_ITEM.PROD_ID , S_ORDER_ITEM.ADJ_UNIT_PRI , S_ORDER_ITEM.BASE_UNIT_PRI ,
S_ORDER_ITEM.CARRIER_CD CARRIER_CD1 , S_ORDER_ITEM.EXTD_QTY , S_ORDER_ITEM.QTY_SHIPPED , S_ORDER_ITEM.REQ_SHIP_DT REQ_SHIP_DT1 , S_ORDER_ITEM.SHIP_ADDR_ID SHIP_ADDR_ID1 ,
S_ORDER_ITEM.SHIP_CON_ID SHIP_CON_ID1 , S_ORDER_ITEM.SHIP_METH_CD SHIP_METH_CD1 , S_ORDER_ITEM.STATUS_CD STATUS_CD1 , S_ORDER_ITEM.PROD_STATUS_CD , S_ORDER_ITEM.PROD_NAME ,
S_ORDER_ITEM.LOANER_FLG , S_ORDER_ITEM.DISCNT_METH_CD , S_ORDER_ITEM.SHIP_OU_ID SHIP_OU_ID1 , S_ORDER_ITEM.STATUS_DT , S_ORDER_ITEM.MUST_DLVR_BY_DT , S_ORDER_ITEM.ACTION_CD ,
S_ORDER_ITEM.ROLLUP_PRI , S_PROD_INT.NAME NAME1 , A.NAME NAME2 , B.NAME NAME3 , S_VOL_DISCNT.NAME NAME4 , ACCNT.PR_INDUST_ID , POSCRTDORG.OU_ID CREATED_BY_ORG_ID ,
POSOWNERORG.OU_ID PR_OWNER_ORG_ID , PAROITEM.LN_NUM , PAROITEM.PROD_ID , SHIPOITEM.CITY , SHIPOITEM.COUNTRY , SHIPOITEM.ZIPCODE , SHIPO.CITY , SHIPO.COUNTRY , SHIPO.ZIPCODE ,
BILL.CITY , BILL.COUNTRY , BILL.ZIPCODE , S_CAMP_CON.PR_CALL_LST_ID SEGMENT_ID , S_ORDER.DCP_ID OFFER_ID , APPRBYPOS.PR_HELD_POSTN_ID , POSOWNERORG.ROW_ID , POSOWNERORG.PR_EMP_ID ,
S_ENTLMNT.PAR_AGREE_ID , ROOTOITEM.PROD_ID ROOT_LN_PROD_ID , ROOTOITEM.LN_NUM ROOT_LN_NUM , S_ORDER.PR_POSTN_ID , S_CAMP_CON.CAMP_LD_WAVE_ID , S_SRC.REGION_ID , OPRI.COST_PRI ,
S_ORDER_ITEM.ORDER_ITM_CURCY_CD OITM_CURCY_CD , ROOTOITEM.ORDER_ITM_CURCY_CD ROOTOITM_CURCY_CD , S_ORDER_ITEM.ORDER_ITM_EXCH_DT OITM_AMT_DT , S_ORDER.ORDER_EXCH_DT ,
S_ORDER_ITEM.CREATED , S_ORDER_ITEM.NET_PRI , S_ORDER_ITEM.CRSE_OFFR_ID , S_ORDER_ITEM.PRI_LST_ID OITM_PRI_LST_ID , ROOTOITEM.PRI_LST_ID ROOTOITM_PRI_LST_ID ,
OWNORG.PRTNR_FLG , VISORG.PRTNR_FLG , S_CAMP_LD_WAVE.LAUNCHED_TS , QUOTE.CREATED , S_ORDER.ACTIVE_FLG , S_ORDER.APPROVED_FLG , PARPROD.PROD_TYPE_CD , ROOTPROD.PROD_TYPE_CD ,
S_PROD_INT.PRICE_TYPE_CD , S_SRC.PROG_END_DT , S_SRC.PROG_START_DT , S_SRC.ROW_ID , S_ORDER.CREATED , OWNORG.ROW_ID , 0 AS X_CUSTOM , S_ORDER_ITEM. X_PHONE_NUMBER ,
S_ORDER_ITEM.X_BACKEND_SERVICE_ID , S_ORDER_ITEM.SERVICE_NUM , S_ORDER_ITEM.BILL_ACCNT_ID , S_ORDER_X.ATTRIB_04 , S_ORDER_X.ATTRIB_30 , S_ORDER_X.ATTRIB_31
FROM
SIEBEL.V_ORDER_ITEM S_ORDER_ITEM, SIEBEL.S_ORDER_ITEM PAROITEM, SIEBEL.S_ORDER_ITEM ROOTOITEM, SIEBEL.S_ORDER, SIEBEL.S_VDISCNT_ITEM A, SIEBEL.S_VOL_DISCNT, SIEBEL.S_PROD_INT,
SIEBEL.S_VDISCNT_ITEM B, SIEBEL.S_INVLOC, SIEBEL.S_ORG_EXT ACCNT, SIEBEL.S_POSTN POSOWNERORG, SIEBEL.S_CONTACT CRTD, SIEBEL.S_CONTACT APPRBYPOS, SIEBEL.S_POSTN POSCRTDORG,
SIEBEL.S_ADDR_ORG SHIPOITEM, SIEBEL.S_ADDR_ORG SHIPO, SIEBEL.S_ADDR_ORG BILL, SIEBEL.S_CAMP_CON, SIEBEL.S_ENTLMNT, SIEBEL.S_SRC, SIEBEL.S_ORDER_ITM_PRI OPRI,
SIEBEL.S_CAMP_LD_WAVE, SIEBEL.S_DOC_QUOTE QUOTE, SIEBEL.S_ORG_EXT OWNORG, SIEBEL.S_ORG_EXT OWNORG1, SIEBEL.S_ORG_EXT VISORG1, SIEBEL.S_ORG_EXT VISORG,
SIEBEL.S_PROD_INT PARPROD, SIEBEL.S_PROD_INT ROOTPROD, SIEBEL.S_ORDER_X
WHERE
S_ORDER_ITEM.ORDER_ID = S_ORDER.ROW_ID
AND S_ORDER_ITEM.ROOT_ORDER_ITEM_ID = ROOTOITEM.ROW_ID
AND S_ORDER_ITEM.PAR_ORDER_ITEM_ID = PAROITEM.ROW_ID(+)
AND S_ORDER_ITEM.PROD_ID = S_PROD_INT.ROW_ID(+)
AND S_ORDER_ITEM.SRC_INVLOC_ID = S_INVLOC.ROW_ID(+)
AND S_ORDER_ITEM.VOL_DISCNT_ITEM_ID = A.ROW_ID(+)
AND S_ORDER_ITEM.VOL_DISCNT_ID = S_VOL_DISCNT.ROW_ID(+)
AND S_ORDER_ITEM.VOL_UPSELL_ITEM_ID = B.ROW_ID(+)
AND S_ORDER_ITEM.SHIP_ADDR_ID = SHIPOITEM.ROW_ID(+)
AND S_ORDER.PR_POSTN_ID = POSOWNERORG.ROW_ID(+)
AND S_ORDER_ITEM.CREATED_BY = CRTD.ROW_ID(+)
AND CRTD.PR_HELD_POSTN_ID = POSCRTDORG.ROW_ID(+)
AND S_ORDER.ACCNT_ID = ACCNT.ROW_ID(+)
AND S_ORDER.CAMP_CON_ID = S_CAMP_CON.ROW_ID(+)
AND S_ORDER.SHIP_ADDR_ID = SHIPO.ROW_ID(+)
AND S_ORDER.BL_ADDR_ID = BILL.ROW_ID(+)
AND S_ORDER.APPR_BY_EMP_ID = APPRBYPOS.ROW_ID(+)
AND S_ORDER.ENTLMNT_ID = S_ENTLMNT.ROW_ID(+)
AND S_ORDER.PROMO_ID = S_SRC.ROW_ID(+)
AND S_ORDER_ITEM.ROW_ID = OPRI.PAR_ROW_ID(+)
AND S_CAMP_CON.CAMP_LD_WAVE_ID = S_CAMP_LD_WAVE.ROW_ID(+)
AND S_ORDER.QUOTE_ID = QUOTE.ROW_ID(+)
AND POSOWNERORG.OU_ID = OWNORG1.ROW_ID(+)
AND OWNORG1.PAR_BU_ID = OWNORG.ROW_ID(+)
AND S_ORDER.BU_ID = VISORG1.ROW_ID(+)
AND VISORG1.PAR_BU_ID = VISORG.ROW_ID(+)
AND PAROITEM.PROD_ID = PARPROD.ROW_ID(+)
AND ROOTOITEM.PROD_ID = ROOTPROD.ROW_ID(+)
AND S_ORDER_ITEM.ORDER_ID = S_ORDER_X.PAR_ROW_ID(+)
AND S_ORDER_ITEM.ROOT_ORDER_ITEM_ID IS NOT NULL;
Execution plan is: select * from table (dbms_xplan.display);PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------------------------------------------------------------------------
Plan hash value: 73463824
------------------------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
------------------------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 3170K| 12G| 4100G (4)|999:59:59 |
| 1 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 2 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 3 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 4 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 5 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 6 | NESTED LOOPS | | 3170K| 12G| 4100G (4)|999:59:59 |
| 7 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 8 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 9 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 10 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 11 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 12 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 13 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 14 | NESTED LOOPS OUTER | | 3170K| 12G| 4100G (4)|999:59:59 |
| 15 | NESTED LOOPS OUTER | | 3170K| 11G| 4100G (4)|999:59:59 |
| 16 | NESTED LOOPS OUTER | | 3170K| 11G| 4100G (4)|999:59:59 |
| 17 | NESTED LOOPS OUTER | | 3170K| 11G| 4100G (4)|999:59:59 |
| 18 | NESTED LOOPS OUTER | | 3170K| 10G| 4100G (4)|999:59:59 |
| 19 | NESTED LOOPS OUTER | | 3170K| 10G| 4100G (4)|999:59:59 |
| 20 | NESTED LOOPS OUTER | | 3170K| 10G| 4100G (4)|999:59:59 |
| 21 | NESTED LOOPS | | 3170K| 9911M| 4100G (4)|999:59:59 |
| 22 | NESTED LOOPS OUTER | | 3108K| 4927M| 2569K (2)| 01:08:47 |
| 23 | NESTED LOOPS OUTER | | 3108K| 4835M| 115K (14)| 00:03:06 |
| 24 | NESTED LOOPS OUTER | | 3108K| 4782M| 115K (14)| 00:03:06 |
| 25 | NESTED LOOPS OUTER | | 3108K| 4660M| 112K (12)| 00:03:02 |
| 26 | NESTED LOOPS OUTER | | 3108K| 4417M| 112K (12)| 00:03:02 |
| 27 | NESTED LOOPS OUTER | | 3108K| 4227M| 112K (12)| 00:03:02 |
| 28 | NESTED LOOPS OUTER | | 3108K| 3943M| 112K (12)| 00:03:02 |
| 29 | NESTED LOOPS OUTER | | 3108K| 3178M| 111K (11)| 00:02:59 |
| 30 | TABLE ACCESS FULL | S_ORDER | 3108K| 2413M| 109K (9)| 00:02:56 |
| 31 | TABLE ACCESS BY INDEX ROWID| S_ADDR_ORG | 1 | 258 | 1 (0)| 00:00:01 |
|* 32 | INDEX UNIQUE SCAN | S_ADDR_ORG_P1 | 1 | | 1 (0)| 00:00:01 |
| 33 | TABLE ACCESS BY INDEX ROWID | S_ADDR_ORG | 1 | 258 | 1 (0)| 00:00:01 |
|* 34 | INDEX UNIQUE SCAN | S_ADDR_ORG_P1 | 1 | | 1 (0)| 00:00:01 |
| 35 | TABLE ACCESS BY INDEX ROWID | S_CAMP_CON | 1 | 96 | 1 (0)| 00:00:01 |
|* 36 | INDEX UNIQUE SCAN | S_CAMP_CON_P1 | 1 | | 1 (0)| 00:00:01 |
| 37 | TABLE ACCESS BY INDEX ROWID | S_ENTLMNT | 1 | 64 | 1 (0)| 00:00:01 |
|* 38 | INDEX UNIQUE SCAN | S_ENTLMNT_P1 | 1 | | 1 (0)| 00:00:01 |
| 39 | TABLE ACCESS BY INDEX ROWID | S_SRC | 1 | 82 | 1 (0)| 00:00:01 |
|* 40 | INDEX UNIQUE SCAN | S_SRC_P1 | 1 | | 1 (0)| 00:00:01 |
| 41 | TABLE ACCESS BY INDEX ROWID | S_CAMP_LD_WAVE | 1 | 41 | 1 (0)| 00:00:01 |
|* 42 | INDEX UNIQUE SCAN | S_CAMP_LD_WAVE_P1 | 1 | | 1 (0)| 00:00:01 |
| 43 | TABLE ACCESS BY INDEX ROWID | S_DOC_QUOTE | 1 | 18 | 1 (0)| 00:00:01 |
|* 44 | INDEX UNIQUE SCAN | S_DOC_QUOTE_P1 | 1 | | 1 (0)| 00:00:01 |
| 45 | TABLE ACCESS BY INDEX ROWID | S_POSTN | 1 | 31 | 1 (0)| 00:00:01 |
|* 46 | INDEX UNIQUE SCAN | S_POSTN_P1 | 1 | | 1 (0)| 00:00:01 |
|* 47 | VIEW | V_ORDER_ITEM | 1 | 1616 | 1318K (4)| 00:35:19 |
| 48 | NESTED LOOPS | | 3128K| 1372M| 1318K (4)| 00:35:19 |
| 49 | INDEX FAST FULL SCAN | S_ETL_I_IMG_25_M2 | 3128K| 32M| 2756 (11)| 00:00:05 |
|* 50 | TABLE ACCESS BY INDEX ROWID | S_ORDER_ITEM | 1 | 449 | 2 (0)| 00:00:01 |
|* 51 | INDEX UNIQUE SCAN | S_ORDER_ITEM_P1 | 1 | | 2 (0)| 00:00:01 |
| 52 | TABLE ACCESS BY INDEX ROWID | S_VDISCNT_ITEM | 1 | 134 | 1 (0)| 00:00:01 |
|* 53 | INDEX UNIQUE SCAN | S_VDISCNT_ITEM_P1 | 1 | | 1 (0)| 00:00:01 |
| 54 | TABLE ACCESS BY INDEX ROWID | S_VOL_DISCNT | 1 | 134 | 1 (0)| 00:00:01 |
|* 55 | INDEX UNIQUE SCAN | S_VOL_DISCNT_P1 | 1 | | 1 (0)| 00:00:01 |
| 56 | TABLE ACCESS BY INDEX ROWID | S_VDISCNT_ITEM | 1 | 134 | 1 (0)| 00:00:01 |
|* 57 | INDEX UNIQUE SCAN | S_VDISCNT_ITEM_P1 | 1 | | 1 (0)| 00:00:01 |
| 58 | TABLE ACCESS BY INDEX ROWID | S_ADDR_ORG | 1 | 258 | 1 (0)| 00:00:01 |
|* 59 | INDEX UNIQUE SCAN | S_ADDR_ORG_P1 | 1 | | 1 (0)| 00:00:01 |
|* 60 | TABLE ACCESS FULL | S_ORDER_ITM_PRI | 1 | 45 | 0 (0)| 00:00:01 |
| 61 | TABLE ACCESS BY INDEX ROWID | S_INVLOC | 1 | 33 | 1 (0)| 00:00:01 |
|* 62 | INDEX UNIQUE SCAN | S_INVLOC_P1 | 1 | | 1 (0)| 00:00:01 |
| 63 | TABLE ACCESS BY INDEX ROWID | S_PROD_INT | 1 | 58 | 1 (0)| 00:00:01 |
|* 64 | INDEX UNIQUE SCAN | S_PROD_INT_P1 | 1 | | 1 (0)| 00:00:01 |
| 65 | TABLE ACCESS BY INDEX ROWID | S_ORDER_X | 1 | 36 | 2 (0)| 00:00:01 |
|* 66 | INDEX RANGE SCAN | S_ORDER_X_U1 | 1 | | 2 (0)| 00:00:01 |
| 67 | TABLE ACCESS BY INDEX ROWID | S_CONTACT | 1 | 14 | 2 (0)| 00:00:01 |
|* 68 | INDEX UNIQUE SCAN | S_CONTACT_P1 | 1 | | 1 (0)| 00:00:01 |
| 69 | TABLE ACCESS BY INDEX ROWID | S_POSTN | 1 | 20 | 1 (0)| 00:00:01 |
|* 70 | INDEX UNIQUE SCAN | S_POSTN_P1 | 1 | | 1 (0)| 00:00:01 |
| 71 | TABLE ACCESS BY INDEX ROWID | S_CONTACT | 1 | 14 | 1 (0)| 00:00:01 |
|* 72 | INDEX UNIQUE SCAN | S_CONTACT_P1 | 1 | | 1 (0)| 00:00:01 |
| 73 | TABLE ACCESS BY INDEX ROWID | S_ORG_EXT | 1 | 14 | 2 (0)| 00:00:01 |
|* 74 | INDEX UNIQUE SCAN | S_ORG_EXT_P1 | 1 | | 1 (0)| 00:00:01 |
| 75 | TABLE ACCESS BY INDEX ROWID | S_ORG_EXT | 1 | 14 | 2 (0)| 00:00:01 |
|* 76 | INDEX UNIQUE SCAN | S_ORG_EXT_P1 | 1 | | 1 (0)| 00:00:01 |
| 77 | TABLE ACCESS BY INDEX ROWID | S_ORG_EXT | 1 | 17 | 2 (0)| 00:00:01 |
|* 78 | INDEX UNIQUE SCAN | S_ORG_EXT_P1 | 1 | | 1 (0)| 00:00:01 |
| 79 | TABLE ACCESS BY INDEX ROWID | S_ORDER_ITEM | 1 | 60 | 2 (0)| 00:00:01 |
|* 80 | INDEX UNIQUE SCAN | S_ORDER_ITEM_P1 | 1 | | 2 (0)| 00:00:01 |
| 81 | TABLE ACCESS BY INDEX ROWID | S_ORDER_ITEM | 1 | 24 | 2 (0)| 00:00:01 |
|* 82 | INDEX UNIQUE SCAN | S_ORDER_ITEM_P1 | 1 | | 2 (0)| 00:00:01 |
| 83 | TABLE ACCESS BY INDEX ROWID | S_PROD_INT | 1 | 16 | 1 (0)| 00:00:01 |
|* 84 | INDEX UNIQUE SCAN | S_PROD_INT_P1 | 1 | | 1 (0)| 00:00:01 |
| 85 | TABLE ACCESS BY INDEX ROWID | S_PROD_INT | 1 | 16 | 1 (0)| 00:00:01 |
|* 86 | INDEX UNIQUE SCAN | S_PROD_INT_P1 | 1 | | 1 (0)| 00:00:01 |
| 87 | TABLE ACCESS BY INDEX ROWID | S_ORG_EXT | 1 | 14 | 2 (0)| 00:00:01 |
|* 88 | INDEX UNIQUE SCAN | S_ORG_EXT_P1 | 1 | | 1 (0)| 00:00:01 |
| 89 | TABLE ACCESS BY INDEX ROWID | S_ORG_EXT | 1 | 17 | 2 (0)| 00:00:01 |
|* 90 | INDEX UNIQUE SCAN | S_ORG_EXT_P1 | 1 | | 1 (0)| 00:00:01 |
------------------------------------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
32 - access("S_ORDER"."SHIP_ADDR_ID"="SHIPO"."ROW_ID"(+))
34 - access("S_ORDER"."BL_ADDR_ID"="BILL"."ROW_ID"(+))
36 - access("S_ORDER"."CAMP_CON_ID"="S_CAMP_CON"."ROW_ID"(+))
38 - access("S_ORDER"."ENTLMNT_ID"="S_ENTLMNT"."ROW_ID"(+))
40 - access("S_ORDER"."PROMO_ID"="S_SRC"."ROW_ID"(+))
42 - access("S_CAMP_CON"."CAMP_LD_WAVE_ID"="S_CAMP_LD_WAVE"."ROW_ID"(+))
44 - access("S_ORDER"."QUOTE_ID"="QUOTE"."ROW_ID"(+))
46 - access("S_ORDER"."PR_POSTN_ID"="POSOWNERORG"."ROW_ID"(+))
47 - filter("S_ORDER_ITEM"."ORDER_ID"="S_ORDER"."ROW_ID")
50 - filter("S_ORDER_ITEM"."ROOT_ORDER_ITEM_ID" IS NOT NULL)
51 - access("S_ORDER_ITEM"."ROW_ID"="S_ETL_I_IMG_25"."ROW_ID")
53 - access("S_ORDER_ITEM"."VOL_DISCNT_ITEM_ID"="A"."ROW_ID"(+))
55 - access("S_ORDER_ITEM"."VOL_DISCNT_ID"="S_VOL_DISCNT"."ROW_ID"(+))
57 - access("S_ORDER_ITEM"."VOL_UPSELL_ITEM_ID"="B"."ROW_ID"(+))
59 - access("S_ORDER_ITEM"."SHIP_ADDR_ID"="SHIPOITEM"."ROW_ID"(+))
60 - filter("S_ORDER_ITEM"."ROW_ID"="OPRI"."PAR_ROW_ID"(+))
PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------------------------------------------------------------------------
62 - access("S_ORDER_ITEM"."SRC_INVLOC_ID"="S_INVLOC"."ROW_ID"(+))
64 - access("S_ORDER_ITEM"."PROD_ID"="S_PROD_INT"."ROW_ID"(+))
66 - access("S_ORDER_ITEM"."ORDER_ID"="S_ORDER_X"."PAR_ROW_ID"(+))
68 - access("S_ORDER_ITEM"."CREATED_BY"="CRTD"."ROW_ID"(+))
70 - access("CRTD"."PR_HELD_POSTN_ID"="POSCRTDORG"."ROW_ID"(+))
72 - access("S_ORDER"."APPR_BY_EMP_ID"="APPRBYPOS"."ROW_ID"(+))
74 - access("S_ORDER"."ACCNT_ID"="ACCNT"."ROW_ID"(+))
76 - access("POSOWNERORG"."OU_ID"="OWNORG1"."ROW_ID"(+))
78 - access("OWNORG1"."PAR_BU_ID"="OWNORG"."ROW_ID"(+))
80 - access("S_ORDER_ITEM"."ROOT_ORDER_ITEM_ID"="ROOTOITEM"."ROW_ID")
82 - access("S_ORDER_ITEM"."PAR_ORDER_ITEM_ID"="PAROITEM"."ROW_ID"(+))
84 - access("PAROITEM"."PROD_ID"="PARPROD"."ROW_ID"(+))
86 - access("ROOTOITEM"."PROD_ID"="ROOTPROD"."ROW_ID"(+))
88 - access("S_ORDER"."BU_ID"="VISORG1"."ROW_ID"(+))
90 - access("VISORG1"."PAR_BU_ID"="VISORG"."ROW_ID"(+))
132 rows selected.
Published by: KODS on 13 December 2012 14:11
Hello
what the plan for
SELECT * FROM V_ORDER_ITEM WHERE ROW_ID = :ROW_ID
?
If it's the same thing, this means that the optimizer cannot merge the view (in fact, he can't even lower the predicate). Nothing in the view looks like he could have done fusion (such as the use of rownum etc.), so is lack of privilege VIEW MERGE or a bug in the optimizer.
GRANT MERGE VIEW ON V_ORDER_ITEM try
Best regards
Nikolai
Tags: Database
Similar Questions
-
Plans of multiple executions for the same SQL statement
Dear experts,
awrsqrpt. SQL shows several plans for a single SQL statement executions. How is it possible that a single SQL statement will be several Plans of executions within the AWR report.
Here is the output of the awrsqrpt for your reference.
Your contribution is very much appreciated.WORKLOAD REPOSITORY SQL Report Snapshot Period Summary DB Name DB Id Instance Inst Num Release RAC Host ------------ ----------- ------------ -------- ----------- --- ------------ TESTDB 2157605839 TESTDB1 1 10.2.0.3.0 YES testhost1 Snap Id Snap Time Sessions Curs/Sess --------- ------------------- -------- --------- Begin Snap: 32541 11-Oct-08 21:00:13 248 141.1 End Snap: 32542 11-Oct-08 21:15:06 245 143.4 Elapsed: 14.88 (mins) DB Time: 12.18 (mins) SQL Summary DB/Inst: TESTDB/TESTDB1 Snaps: 32541-32542 Elapsed SQL Id Time (ms) ------------- ---------- 51szt7b736bmg 25,131 Module: SQL*Plus UPDATE TEST SET TEST_TRN_DAY_CL = (SELECT (NVL(ACCT_CR_BAL,0) + NVL(ACCT_DR_BAL, 0)) FROM ACCT WHERE ACCT_TRN_DT = (:B1 ) AND TEST_ACC_NB = ACCT_ACC_NB(+)) WHERE TEST_BATCH_DT = (:B1 ) ------------------------------------------------------------- SQL ID: 51szt7b736bmg DB/Inst: TESTDB/TESTDB1 Snaps: 32541-32542 -> 1st Capture and Last Capture Snap IDs refer to Snapshot IDs witin the snapshot range -> UPDATE TEST SET TEST_TRN_DAY_CL = (SELECT (NVL(ACCT_CR_BAL,0) + NVL(AC... Plan Hash Total Elapsed 1st Capture Last Capture # Value Time(ms) Executions Snap ID Snap ID --- ---------------- ---------------- ------------- ------------- -------------- 1 2960830398 25,131 1 32542 32542 2 3834848140 0 0 32542 32542 ------------------------------------------------------------- Plan 1(PHV: 2960830398) ----------------------- Plan Statistics DB/Inst: TESTDB/TESTDB1 Snaps: 32541-32542 -> % Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100 Stat Name Statement Per Execution % Snap ---------------------------------------- ---------- -------------- ------- Elapsed Time (ms) 25,131 25,130.7 3.4 CPU Time (ms) 23,270 23,270.2 3.9 Executions 1 N/A N/A Buffer Gets 2,626,166 2,626,166.0 14.6 Disk Reads 305 305.0 0.3 Parse Calls 1 1.0 0.0 Rows 371,735 371,735.0 N/A User I/O Wait Time (ms) 564 N/A N/A Cluster Wait Time (ms) 0 N/A N/A Application Wait Time (ms) 0 N/A N/A Concurrency Wait Time (ms) 0 N/A N/A Invalidations 0 N/A N/A Version Count 2 N/A N/A Sharable Mem(KB) 26 N/A N/A ------------------------------------------------------------- Execution Plan ------------------------------------------------------------------------------------------------ | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------------------------------ | 0 | UPDATE STATEMENT | | | | 1110 (100)| | | 1 | UPDATE | TEST | | | | | | 2 | TABLE ACCESS FULL | TEST | 116K| 2740K| 1110 (2)| 00:00:14 | | 3 | TABLE ACCESS BY INDEX ROWID| ACCT | 1 | 26 | 5 (0)| 00:00:01 | | 4 | INDEX RANGE SCAN | ACCT_DT_ACC_IDX | 1 | | 4 (0)| 00:00:01 | ------------------------------------------------------------------------------------------------ Plan 2(PHV: 3834848140) ----------------------- Plan Statistics DB/Inst: TESTDB/TESTDB1 Snaps: 32541-32542 -> % Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100 Stat Name Statement Per Execution % Snap ---------------------------------------- ---------- -------------- ------- Elapsed Time (ms) 0 N/A 0.0 CPU Time (ms) 0 N/A 0.0 Executions 0 N/A N/A Buffer Gets 0 N/A 0.0 Disk Reads 0 N/A 0.0 Parse Calls 0 N/A 0.0 Rows 0 N/A N/A User I/O Wait Time (ms) 0 N/A N/A Cluster Wait Time (ms) 0 N/A N/A Application Wait Time (ms) 0 N/A N/A Concurrency Wait Time (ms) 0 N/A N/A Invalidations 0 N/A N/A Version Count 2 N/A N/A Sharable Mem(KB) 26 N/A N/A ------------------------------------------------------------- Execution Plan --------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | --------------------------------------------------------------------------------------------- | 0 | UPDATE STATEMENT | | | | 2 (100)| | | 1 | UPDATE | TEST | | | | | | 2 | TABLE ACCESS BY INDEX ROWID| TEST | 1 | 28 | 2 (0)| 00:00:01 | | 3 | INDEX RANGE SCAN | TEST_DT_IND | 1 | | 1 (0)| 00:00:01 | | 4 | TABLE ACCESS BY INDEX ROWID| ACCT | 1 | 26 | 4 (0)| 00:00:01 | | 5 | INDEX RANGE SCAN | INDX_ACCT_DT | 1 | | 3 (0)| 00:00:01 | --------------------------------------------------------------------------------------------- Full SQL Text SQL ID SQL Text ------------ ----------------------------------------------------------------- 51szt7b736bm UPDATE TEST SET TEST_TRN_DAY_CL = (SELECT (NVL(ACCT_CR_BAL, 0) + NVL(ACCT_DR_BAL, 0)) FROM ACCT WHERE ACCT_TRN_DT = (:B1 ) AND PB RN_ACC_NB = ACCT_ACC_NB(+)) WHERE TEST_BATCH_DT = (:B1 )
Thank you for taking your time to answer my question.
ConcerningOracle Lover3 wrote:
How will I know (from Plan 1 and Plan 2) whose execution plan chose for the current run?Since you're already on 10.2, you can identify the actual execution plan by checking in V$ SESSION SQL_ID and SQL_CHILD_NUMBER column. This can be used to identify the plan in V$ SQL_PLAN (columns SQL_ID and CHILD_NUMBER) and in 10g, you can use the convenient DBMS_XPLAN. Function DISPLAY_CURSOR for the information of the real plan using these two parameters.
Kind regards
RandolfOracle related blog stuff:
http://Oracle-Randolf.blogspot.com/SQLTools ++ for Oracle (Open source Oracle GUI for Windows):
http://www.sqltools-plusplus.org:7676 /.
http://sourceforge.NET/projects/SQLT-pp/ -
Get the SQL execution plan that is currently running in 9i
Hello
Apologies for the magnitude of this issue, but I was wondering if someone could help me to the more accurate/efficient way to get a piece of running Oracle 9i SQL execution plan.
in 10g and 11g of course dbms_xplan.display_cursor (sql_id) can be used.
How can this be achieved in 9i, currently I am just get the SQL_TEXT and then executing a plan to explain ("EXPLAIN PLAN for.") - I think that this is not neccesserally the same plan to explain that will be used for the sql code that runs if
Any help would be appreciated.
Thank youThe plan exists after analysis difficult.
Statistics of actual execution will require a completed.
That is why sql followed in real time is so great in 11g.
In 9i, difficult. -
My credit card has expired. I can't update the payment method. Now! My plan show expired. What should I do?
Hello
I don't see any subscription / membership to the title of the email that you use with the forums.
Please share the e-mail in a private message so that we can provide you with comprehensive information.
At the same time, if the plan has expired suggest you kindly purchase a new subscription.
Please see: pricing and membership creative cloud plans | Adobe Creative Cloud
I hope this information is useful!
-
Hello
I was wondering if anyone could advise on the best way to capture the following in an 11g database.
Say that we have;
-a piece of SQL execution by up to 50 times per minute.
-unique execution times vary.
Aside from dba_hist_sqlstat and generate a sort of average over a period of 30 min.
What would be the best way to get the execution time of this piece of SQL in real-time.
say I want the individual execution time of this last of 100 executions.
Any help would be appreciated
Thank you
Draw the session (with events of waiting if you want) that executes SQL and tkprof the trc file.
-
Hello. all.
that means in the dictionary of v$ sql (10.2.0.4)
v$ SQL.elapased_time > 0
v$ SQL.executions = 0
Best regards.The statement has been analyzed (or it would not have been in v$ sql), but it was never executed.
Some drivers ODBC and other front end tools seem to require additional analysis.
You do not provide any other context (as affected for example instruction) a more precise answer is difficult to predict.-------
Sybrand Bakker
Senior Oracle DBA -
How many days old, we can see SQL executions OEM 11 g
one of my technical guys asked me to back sql session 5 days old information how many days we can see SQL executions OEM 11 g... ?Metric historical information will be saved for a year by default.
Check http://download.oracle.com/docs/cd/E11857_01/em.111/e16790/repository.htm#i1030660
Executing SQL statements may be analyzed snapshots AWR using ADDM.
You can keep the instant CWA as long as you want.
Bare in mind that this will occupy space in database.From the homepage of the database select the Server tab and select the automatic workload repository link to set the snapshot retention
Concerning
Rob
http://oemgc.WordPress.com -
Top of page SQL executions on particular schema
Hello
Operating system: Sun solaris
Oracle10g
How to find the "Top Sql execution" on my diagram. While I find RowsProcessed rows by Exec, Cpu by Exec, id Sql, sql module, sql and complete sql statement text.
Thanks in advance
KSGHello
You can query V$ SQL or DBA_HIST_SQLSTAT and use the PARSING_SCHEMA_NAME column to limit the results to the SQLs executed by a specific schema.
Concerning
Maurice -
Hello
I need to get the execution plan for a particular SQL, but I don't have it. Application it issues for a second or two and then his party so I think that the definition of a trace on specific user. Is it possible to get the execution plan of the query like this? Thank you!
Find the sql code, you are interested in v$ sql using the sql_text column and get the SQL_ID and CHILD_NUMBER. Entry of these two values for the query to get the execution below plan.
Select * from table
(dbms_xplan.display_cursor ('
> ', >, 'ALLSTATS')); -
package pl/sql execution plan
Hi all
How we can find the bottoleneks in the pl/sql package. I know we can use dbms_profiler. Gathersed data, but not having planned the details.
Here's the query I use
Select s.text,
p.total_occur,
p.TOTAL_TIME/1000000000 total_time,
p.min_time / 1000000000 min_time,.
p.max_time / 1000000000 max_time
of plsql_profiler_data p, user_source s, plsql_profiler_runs r
where p.line # = Check
and p.runid = r.runid
and r.run_comment = 'XXXX_YYY_INIT.XXX_TO_DDD(1,,360). '
and s.name LIKE 'XXX % ';
I see that dbms_profiler has gathered data. But it does give that which line is how long take.
Please guide findout that.
Thank you
Col owner format a10
Col name format a20
row col 9999 format
Col source format a40 word_wrap
occurrences of col 9999999 format
Col tot_time_s format 999,999,990.999
Col run_comment format a40
format of pct col 999
Select runid, run_date, plsql_profiler_runs run_comment;
Select OWNER u.unit_owner, u.unit_name NAME, d.line # LINE, (select the text from all_source where type in ('BODY of PACKAGE', 'FUNCTION', 'PROCEDURE', 'TRIGGER') and name = u.unit_name and = d.line line # and u.unit_owner and type = u.unit_type = owner) SOURCE, d.total_occur OCCURRENCES, (d.total_time/1000000000) TOT_TIME_S, d.total_time/r.run_total_time*100 "PCT".
of plsql_profiler_runs r, plsql_profiler_units u, plsql_profiler_data d
where are.runid = & runid
and r.runid = u.runid
and r.runid = d.runid
and d.unit_number = u.unit_number
and (d.total_time/1000000000) > 1 - more than 1 second
order of tot_time_s
/
Kind regards
Harman
-
Under SQL result in development in a few seconds, but in production continues to run. Explain plan is also less.
Oracle Database 11 g Enterprise Edition Release 11.2.0.4.0 - 64 bit Production
CURSOR_SHARING is set to EXACT (production) and FORCE (development) - is this the reason?
select wonum from workorder where worktype in ('EM','CM') and siteid = 'DWS_DSS' and historyflag = 0 and (exists (select null from dcw_ddotpermits b where workorder.wonum = b.wonum and workorder.siteid = b.siteid and b.permittype in ('Construction Permit', 'Occupancy Permit') and b.permitenddate > sysdate group by b.wonum, b.permittype having count(wonum) > 1));
Explain the Plan of Production (which is slow)
------------------------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop | ------------------------------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 26 | 162K (17)| 00:32:30 | | | |* 1 | TABLE ACCESS BY GLOBAL INDEX ROWID| WORKORDER | 1491 | 38766 | 4259 (1)| 00:00:52 | 1 | 1 | |* 2 | INDEX RANGE SCAN | WORKORDER_NDX20 | 2399 | | 988 (1)| 00:00:12 | | | |* 3 | FILTER | | | | | | | | | 4 | HASH GROUP BY | | 1 | 35 | 6 (17)| 00:00:01 | | | |* 5 | TABLE ACCESS BY INDEX ROWID | DCW_DDOTPERMITS | 1 | 35 | 5 (0)| 00:00:01 | | | |* 6 | INDEX RANGE SCAN | W_DDOTPERMITS_NDX2 | 3 | | 2 (0)| 00:00:01 | | | ------------------------------------------------------------------------------------------------------------------------ Predicate Information (identified by operation id): --------------------------------------------------- 1 - filter("WORKTYPE"='CM' OR "WORKTYPE"='EM') 2 - access("SITEID"='DWS_DSS' AND "HISTORYFLAG"=0) filter( EXISTS (SELECT 0 FROM "MAXIMO"."DCW_DDOTPERMITS" "B" WHERE "B"."WONUM"=:B1 AND ("B"."PERMITTYPE"='Construction Permit' OR "B"."PERMITTYPE"='Occupancy Permit') AND "B"."PERMITENDDATE">SYSDATE@! AND "B"."SITEID"=:B2 GROUP BY "B"."WONUM","B"."PERMITTYPE" HAVING COUNT(*)>1)) 3 - filter(COUNT(*)>1) 5 - filter(("B"."PERMITTYPE"='Construction Permit' OR "B"."PERMITTYPE"='Occupancy Permit') AND "B"."PERMITENDDATE">SYSDATE@! AND "B"."SITEID"=:B1) 6 - access("B"."WONUM"=:B1)
Explain the Plan of development (which is fast)
----------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ----------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 25 | 28247 (17)| 00:05:39 | |* 1 | FILTER | | | | | | |* 2 | VIEW | index$_join$_001 | 7991 | 195K| 985 (1)| 00:00:12 | |* 3 | HASH JOIN | | | | | | | 4 | INLIST ITERATOR | | | | | | |* 5 | INDEX RANGE SCAN | WWORKORDER_NDX32 | 7991 | 195K| 279 (2)| 00:00:04 | |* 6 | INDEX RANGE SCAN | WORKORDER_NDX20 | 7991 | 195K| 973 (1)| 00:00:12 | |* 7 | FILTER | | | | | | | 8 | HASH GROUP BY | | 1 | 39 | 6 (17)| 00:00:01 | |* 9 | TABLE ACCESS BY INDEX ROWID| DCW_DDOTPERMITS | 1 | 39 | 5 (0)| 00:00:01 | |* 10 | INDEX RANGE SCAN | W_DDOTPERMITS_NDX2 | 3 | | 2 (0)| 00:00:01 | ----------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - filter( EXISTS (SELECT 0 FROM "MAXIMO"."DCW_DDOTPERMITS" "B" WHERE "B"."WONUM"=:B1 AND ("B"."PERMITTYPE"=:SYS_B_4 OR "B"."PERMITTYPE"=:SYS_B_5) AND "B"."PERMITENDDATE">SYSDATE@! AND "B"."SITEID"=:B2 GROUP BY "B"."WONUM","B"."PERMITTYPE" HAVING COUNT(*)>:SYS_B_6)) 2 - filter("HISTORYFLAG"=:SYS_B_3 AND "SITEID"=:SYS_B_2 AND ("WORKTYPE"=:SYS_B_0 OR "WORKTYPE"=:SYS_B_1)) 3 - access(ROWID=ROWID) 5 - access("WORKTYPE"=:SYS_B_0 OR "WORKTYPE"=:SYS_B_1) 6 - access("SITEID"=:SYS_B_2 AND "HISTORYFLAG"=:SYS_B_3) 7 - filter(COUNT(*)>:SYS_B_6) 9 - filter(("B"."PERMITTYPE"=:SYS_B_4 OR "B"."PERMITTYPE"=:SYS_B_5) AND "B"."PERMITENDDATE">SYSDATE@! AND "B"."SITEID"=:B1) 10 - access("B"."WONUM"=:B1)
It looks more like a problem with the size of the data and related statistics. (It may be simply the outdated statistics on dev).
In the production of a larger data NDX20 index on its own looks too expensive to the optimizer so it combines this with the index of ndx32 to avoid visiting the table.
The first step to study the problem would be to check if the estimated row counts are realistic for individual systems, and then to determine if the data cluster for the production system is much better than Oracle think it is - if yes, then (for newer versions) affecting the preference of table 'table made of blocks cached' a realistic value can help ( https://jonathanlewis.wordpress.com/2015/11/02/clustering_factor-4/ ). If all else fails and the dev is good then allusion and capture of a Plan SQL database may be required.
Concerning
Jonathan Lewis
-
SQL execution 11.2.0.1 to 11.2.0.4
Hi all
I have a problem of my version of the 11.2.0.1 to 11.2.0.4 database migration, save you resources are the same, but when to perform a select Oracle consumes 100% of CPU and not respond to the request.
Is there a function or something that could have an impact on?
Thank you very much.
Thank you to all the world and we have seen how you run THAT SQL is apparently the execution plan that is oracle doing was choose better execution plans, but this affects the performance of the database, try to modify the hidden parameter "_optimizer_use_feedback"a false and started to behave better basis. "
SQL > alter system set "_enable_shared_pool_durations" = false scope = spfile;
Thank you very much
-
3 clues on 3 different columns, but explain plan shows full table scan for select queries
I have a table - used and have index - functional ind1 (upper (f_name)), index - (emp_id) ind2 ind3 (upper (l_name) functional on 3 columns diffferent - what, emp_id, l_name respectively.) Now when I check explain plans for sub queries, they all have two shows complete table for the employee of the table scan. FYI - employee table is non-parittioned.
Can someone tell me why 3 indices are not used here?
(1) select emp_id, upper (f_name), upper (l_name) of the employee
(2) select upper (f_name), mp_id, upper (l_name) of the employee
where upper (f_name) = upper (f_name)
and emp_id = emp_id
and upper (l_name) = upper (l_name)
If I can push oracle (version 11) to use these indexes somewho - maybe using tips? Any help is appreciated.
Observations: SQL> desc emp1; Name Null? Type ----------------------------------------- -------- ----------------- EMPID NOT NULL NUMBER F_NAME NOT NULL VARCHAR2(3) L_NAME NOT NULL VARCHAR2(3) SALARY NUMBER JOB_ROLE VARCHAR2(5) DEPTID NUMBER create index idx2 on emp1(empid); create index idx1 on emp1(upper(f_name) ); create index idx3 on emp1(f_name,empid, l_name); exec dbms_stats.gather_table_stats(user,'EMP1', cascade=>true); 8 rows selected. SQL> explain plan for 2 select /*+ index_join(e idx1 idx2 idx3)*/ upper(l_name),empid, upper(f_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 3449967945 ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 14 (0)| 00:00:01 | | 1 | INDEX FULL SCAN | IDX3 | 20000 | 175K| 14 (0)| 00:00:01 | ------------------------------------------------------------------------- 8 rows selected. SQL> explain plan for 2 select upper(f_name),empid,upper(l_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 3449967945 ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 14 (0)| 00:00:01 | | 1 | INDEX FULL SCAN | IDX3 | 20000 | 175K| 14 (0)| 00:00:01 | ------------------------------------------------------------------------- 8 rows selected. SQL> explain plan for 2 select /*+ index_ffs(e idx3)*/ upper(l_name),empid, upper(f_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 2496145112 ----------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ----------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 14 (0)| 00:00:01 | | 1 | INDEX FAST FULL SCAN| IDX3 | 20000 | 175K| 14 (0)| 00:00:01 | ----------------------------------------------------------------------------- 8 rows selected. SQL> explain plan for 2 select /*+ index(e idx3)*/ upper(l_name),empid, upper(f_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 3449967945 ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 14 (0)| 00:00:01 | | 1 | INDEX FULL SCAN | IDX3 | 20000 | 175K| 14 (0)| 00:00:01 | ------------------------------------------------------------------------- 8 rows selected. SQL> explain plan for 2 select upper(f_name),empid,upper(l_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 3449967945 ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 14 (0)| 00:00:01 | | 1 | INDEX FULL SCAN | IDX3 | 20000 | 175K| 14 (0)| 00:00:01 | ------------------------------------------------------------------------- 8 rows selected. SQL> drop index idx3; Index dropped. SQL> explain plan for 2 select upper(l_name),empid, upper(f_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 3330885630 -------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | -------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 18 (0)| 00:00:01 | | 1 | TABLE ACCESS FULL| EMP1 | 20000 | 175K| 18 (0)| 00:00:01 | -------------------------------------------------------------------------- 8 rows selected. SQL> create index idx3 on emp1(f_name,empid, l_name ); Index created. SQL> explain plan for 2 select upper(l_name),empid, upper(f_name) from emp1 e; Explained. SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 3449967945 ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 20000 | 175K| 14 (0)| 00:00:01 | | 1 | INDEX FULL SCAN | IDX3 | 20000 | 175K| 14 (0)| 00:00:01 |
-
Explain Plan shows not good results.
Hi gurus,
Please help me understand under question.
Whenever I have do explain plan on any sql statements he says as explained but when retriving explain plan output it shows same results again and again.
DB - 11 GR 2 Stand alone
ASM - configured.
OS - RHEL 6.2.
SQL > select count (*) in the t2114;
COUNT (*)
----------
639292
SQL > explain plan for select count (*) from t2114;
He explained.
SQL > @?/rdbms/admin/utlxpls.sql
PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Hash value of plan: 1497650422
----------------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |
----------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | 6634. 524K | 2993 (19) | 00:00:01 |
| 1. SORT ORDER BY | 6634. 524K | 2993 (19) | 00:00:01 |
| 2. TABLE ACCESS BY INDEX ROWID | T2210 | 6634. 524K | 2947 (17) | 00:00:01 |
|* 3 | INDEX RANGE SCAN | T2210_T | 6842. 108 (22) | 00:00:01 |
----------------------------------------------------------------------------------------
Information of predicates (identified by the operation identity card):
---------------------------------------------------
3 - access("T2210".") C490008000 ' =: SYS_B_0 AND "T2210".» C490009100 ' =: SYS_B_2.
(AND "T2210". ' C301363300 '= TO_NUMBER (:SYS_B_1)).
16 selected lines.
SQL > explain the plan for
2. SELECT T2114. C1 FROM T2114 WHERE ((T2114. C1000000001 =: 'SYS_B_0') AND (T2114. C536871442 =: 'SYS_B_1') AND (T2114. C536871477 =: 'SYS_B_2') AND ((: "SYS_B_3" - T2114.)) (C3) > =: 'SYS_B_4') AND ((: "SYS_B_5" - T2114.)) (C3) < =: 'SYS_B_6') AND (T2114. C1000000217 AS: 'SYS_B_7') AND (T2114. C536871478 <: 'SYS_B_8')) ORDER BY C1000000161 DESC,: 'SYS_B_9' ASC;
He explained.
SQL > SELECT * FROM TABLE (dbms_xplan.display);
PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Hash value of plan: 1497650422
----------------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |
----------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | 6634. 524K | 2993 (19) | 00:00:01 |
| 1. SORT ORDER BY | 6634. 524K | 2993 (19) | 00:00:01 |
| 2. TABLE ACCESS BY INDEX ROWID | T2210 | 6634. 524K | 2947 (17) | 00:00:01 |
|* 3 | INDEX RANGE SCAN | T2210_T | 6842. 108 (22) | 00:00:01 |
----------------------------------------------------------------------------------------
Information of predicates (identified by the operation identity card):
---------------------------------------------------
3 - access("T2210".") C490008000 ' =: SYS_B_0 AND "T2210".» C490009100 ' =: SYS_B_2.
(AND "T2210". ' C301363300 '= TO_NUMBER (:SYS_B_1)).
16 selected lines.In the future, please do not use * on object.
Use the owner, object_type, object_name
You avoid output unreadable in doing so.In the output that you show, you would need to know where the PUBLIC synonym points, by querying dba_synonyms or all_synonyms.
If she SYS. Plan_table, you can drop ARADMIN. PLAN_TABLE.
If there is no PLAN_TABLE SYS, you have to solve this problem.-----------
Sybrand Bakker
Senior Oracle DBA -
PLAN to EXPLAIN verbose output when you ask explain simple plan on SQL
Hello. In short, I have two questions: first, inability to run EXPLAIN PLAN via SET AUTOTRACE ON EXPLAIN and second, extremely detailed output when I connect as SYSDBA to bypass the first issue.
Thus, question number one:
I am trying to obtain an EXPLAIN PLAN via SET AUTOTRACE ON EXPLAIN to a simple SQL query:
So, first question, why I get this error? Object should be available to everyone, right?1 select decode(rownum,1,'JAN', 2,'FEB',3,'MAR',4,'APR',5,'MAY',6,'JUN',7,'JUL',8,'AUG',9,'SEP',10,'OCT',11,'NOV',12,'DEC') 2* from all_objects where rownum<13 HR@XE> / DEC --- JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC 12 rows selected. HR@XE> set autotrace on explain HR@XE> / DEC --- JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC 12 rows selected. Execution Plan ---------------------------------------------------------- ERROR: ORA-01039: insufficient privileges on underlying objects of the view
To work around this I connect as sysdba and get the second issue: the following extremely detailed output
Thanks in advance.HR@XE> connect / as sysdba Connected. SYS@XE> select decode(rownum,1,'JAN', 2,'FEB',3,'MAR',4,'APR',5,'MAY',6,'JUN',7,'JUL',8,'AUG',9,'SEP',10,'OCT',11,'NOV',12,'DEC') 2 from all_objects where rownum<13; DEC --- JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC 12 rows selected. SYS@XE> set autotrace on explain SYS@XE> / DEC --- JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC 12 rows selected. Execution Plan ---------------------------------------------------------- Plan hash value: 1291336664 -------------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | -------------------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 12 | 3240 | 5 (20)| 00:00:01 | |* 1 | COUNT STOPKEY | | | | | | |* 2 | FILTER | | | | | | |* 3 | HASH JOIN | | 32 | 8640 | 5 (20)| 00:00:01 | | 4 | INDEX FULL SCAN | I_USER2 | 49 | 1078 | 1 (0)| 00:00:01 | |* 5 | HASH JOIN | | 32 | 5248 | 4 (25)| 00:00:01 | | 6 | INDEX FULL SCAN | I_USER2 | 49 | 196 | 1 (0)| 00:00:01 | |* 7 | TABLE ACCESS FULL | OBJ$ | 33 | 2640 | 2 (0)| 00:00:01 | |* 8 | TABLE ACCESS BY INDEX ROWID | IND$ | 1 | 8 | 2 (0)| 00:00:01 | |* 9 | INDEX UNIQUE SCAN | I_IND1 | 1 | | 1 (0)| 00:00:01 | |* 10 | HASH JOIN | | 1 | 24 | 3 (34)| 00:00:01 | |* 11 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 2 (0)| 00:00:01 | | 12 | FIXED TABLE FULL | X$KZSRO | 100 | 1300 | 0 (0)| 00:00:01 | |* 13 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 14 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 15 | NESTED LOOPS | | | | | | | 16 | NESTED LOOPS | | 1 | 73 | 6 (0)| 00:00:01 | | 17 | NESTED LOOPS | | 1 | 63 | 4 (0)| 00:00:01 | | 18 | NESTED LOOPS | | 1 | 52 | 3 (0)| 00:00:01 | | 19 | MERGE JOIN CARTESIAN | | 1 | 48 | 2 (0)| 00:00:01 | |* 20 | INDEX RANGE SCAN | I_OBJ5 | 1 | 35 | 2 (0)| 00:00:01 | | 21 | BUFFER SORT | | 100 | 1300 | 0 (0)| 00:00:01 | | 22 | FIXED TABLE FULL | X$KZSRO | 100 | 1300 | 0 (0)| 00:00:01 | |* 23 | INDEX RANGE SCAN | I_USER2 | 1 | 4 | 1 (0)| 00:00:01 | |* 24 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 1 (0)| 00:00:01 | |* 25 | INDEX RANGE SCAN | I_DEPENDENCY1 | 4 | | 1 (0)| 00:00:01 | |* 26 | TABLE ACCESS BY INDEX ROWID | DEPENDENCY$ | 1 | 10 | 2 (0)| 00:00:01 | |* 27 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 28 | HASH JOIN | | 1 | 24 | 3 (34)| 00:00:01 | |* 29 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 2 (0)| 00:00:01 | | 30 | FIXED TABLE FULL | X$KZSRO | 100 | 1300 | 0 (0)| 00:00:01 | |* 31 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 32 | NESTED LOOPS | | 2 | 48 | 2 (0)| 00:00:01 | |* 33 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 2 (0)| 00:00:01 | |* 34 | FIXED TABLE FULL | X$KZSRO | 2 | 26 | 0 (0)| 00:00:01 | | 35 | NESTED LOOPS | | 1 | 38 | 2 (0)| 00:00:01 | | 36 | NESTED LOOPS | | 1 | 25 | 2 (0)| 00:00:01 | |* 37 | TABLE ACCESS BY INDEX ROWID | TRIGGER$ | 1 | 14 | 1 (0)| 00:00:01 | |* 38 | INDEX UNIQUE SCAN | I_TRIGGER2 | 1 | | 0 (0)| 00:00:01 | |* 39 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 1 (0)| 00:00:01 | |* 40 | FIXED TABLE FULL | X$KZSRO | 1 | 13 | 0 (0)| 00:00:01 | |* 41 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 42 | NESTED LOOPS | | | | | | | 43 | NESTED LOOPS | | 1 | 73 | 6 (0)| 00:00:01 | | 44 | NESTED LOOPS | | 1 | 63 | 4 (0)| 00:00:01 | | 45 | NESTED LOOPS | | 1 | 52 | 3 (0)| 00:00:01 | | 46 | MERGE JOIN CARTESIAN | | 1 | 48 | 2 (0)| 00:00:01 | |* 47 | INDEX RANGE SCAN | I_OBJ5 | 1 | 35 | 2 (0)| 00:00:01 | | 48 | BUFFER SORT | | 100 | 1300 | 0 (0)| 00:00:01 | | 49 | FIXED TABLE FULL | X$KZSRO | 100 | 1300 | 0 (0)| 00:00:01 | |* 50 | INDEX RANGE SCAN | I_USER2 | 1 | 4 | 1 (0)| 00:00:01 | |* 51 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 1 (0)| 00:00:01 | |* 52 | INDEX RANGE SCAN | I_DEPENDENCY1 | 4 | | 1 (0)| 00:00:01 | |* 53 | TABLE ACCESS BY INDEX ROWID | DEPENDENCY$ | 1 | 10 | 2 (0)| 00:00:01 | |* 54 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 55 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 56 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 57 | NESTED LOOPS | | 2 | 68 | 2 (0)| 00:00:01 | | 58 | NESTED LOOPS | | 1 | 21 | 2 (0)| 00:00:01 | | 59 | TABLE ACCESS BY INDEX ROWID | TABPART$ | 1 | 10 | 1 (0)| 00:00:01 | |* 60 | INDEX UNIQUE SCAN | I_TABPART_OBJ$ | 1 | | 0 (0)| 00:00:01 | |* 61 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 11 | 1 (0)| 00:00:01 | |* 62 | FIXED TABLE FULL | X$KZSRO | 2 | 26 | 0 (0)| 00:00:01 | |* 63 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 64 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 65 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 66 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 67 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 68 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 69 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 70 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 71 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 72 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 73 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 74 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 75 | VIEW | | 1 | 13 | 2 (0)| 00:00:01 | | 76 | FAST DUAL | | 1 | | 2 (0)| 00:00:01 | |* 77 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 78 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 79 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 80 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 81 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | |* 82 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 83 | NESTED LOOPS | | 2 | 42 | 2 (0)| 00:00:01 | |* 84 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 8 | 2 (0)| 00:00:01 | |* 85 | FIXED TABLE FULL | X$KZSRO | 2 | 26 | 0 (0)| 00:00:01 | |* 86 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 87 | NESTED LOOPS | | 2 | 42 | 2 (0)| 00:00:01 | |* 88 | INDEX RANGE SCAN | I_OBJAUTH1 | 1 | 8 | 2 (0)| 00:00:01 | |* 89 | FIXED TABLE FULL | X$KZSRO | 2 | 26 | 0 (0)| 00:00:01 | |* 90 | FIXED TABLE FULL | X$KZSPR | 1 | 26 | 0 (0)| 00:00:01 | | 91 | VIEW | | 1 | 16 | 1 (0)| 00:00:01 | | 92 | SORT GROUP BY | | 1 | 86 | 1 (0)| 00:00:01 | | 93 | NESTED LOOPS | | 1 | 86 | 1 (0)| 00:00:01 | | 94 | MERGE JOIN CARTESIAN | | 1 | 78 | 0 (0)| 00:00:01 | | 95 | NESTED LOOPS | | 1 | 65 | 0 (0)| 00:00:01 | |* 96 | INDEX UNIQUE SCAN | I_OLAP_CUBES$ | 1 | 13 | 0 (0)| 00:00:01 | |* 97 | TABLE ACCESS BY INDEX ROWID| OLAP_DIMENSIONALITY$ | 1 | 52 | 0 (0)| 00:00:01 | |* 98 | INDEX RANGE SCAN | I_OLAP_DIMENSIONALITY$ | 1 | | 0 (0)| 00:00:01 | | 99 | BUFFER SORT | | 1 | 13 | 0 (0)| 00:00:01 | | 100 | INDEX FULL SCAN | I_OLAP_CUBE_DIMENSIONS$ | 1 | 13 | 0 (0)| 00:00:01 | |*101 | INDEX RANGE SCAN | I_OBJ1 | 1 | 8 | 1 (0)| 00:00:01 | | 102 | NESTED LOOPS | | 1 | 30 | 2 (0)| 00:00:01 | |*103 | INDEX SKIP SCAN | I_USER2 | 1 | 20 | 1 (0)| 00:00:01 | |*104 | INDEX RANGE SCAN | I_OBJ4 | 1 | 10 | 1 (0)| 00:00:01 | -------------------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - filter(ROWNUM<13) 2 - filter(("O"."TYPE#"<>1 AND "O"."TYPE#"<>10 OR "O"."TYPE#"=1 AND (SELECT 1 FROM "SYS"."IND$" "I" WHERE "I"."OBJ#"=:B1 AND ("I"."TYPE#"=1 OR "I"."TYPE#"=2 OR "I"."TYPE#"=3 OR "I"."TYPE#"=4 OR "I"."TYPE#"=6 OR "I"."TYPE#"=7 OR "I"."TYPE#"=9))=1) AND (("O"."SPARE3"=USERENV('SCHEMAID') OR "O"."SPARE3"=1) OR "O"."TYPE#"=13 AND ( EXISTS (SELECT 0 FROM "SYS"."OBJAUTH$" "OA",SYS."X$KZSRO" "X$KZSRO" WHERE "OA"."GRANTEE#"="KZSROROL" AND "OA"."OBJ#"=:B2 AND ("OA"."PRIVILEGE#"=12 OR "OA"."PRIVILEGE#"=26)) OR EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE "INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-184) OR (-"KZSPRPRV")=(-181) OR (-"KZSPRPRV")=(-241)))) OR ("O"."TYPE#"=1 OR "O"."TYPE#"=2 OR "O"."TYPE#"=3 OR "O"."TYPE#"=4 OR "O"."TYPE#"=5 OR "O"."TYPE#"=19 OR "O"."TYPE#"=20 OR "O"."TYPE#"=34 OR "O"."TYPE#"=35) AND EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE "INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-45) OR (-"KZSPRPRV")=(-47) OR (-"KZSPRPRV")=(-48) OR (-"KZSPRPRV")=(-49) OR (-"KZSPRPRV")=(-50))) OR "O"."TYPE#"=11 AND ( EXISTS (SELECT 0 FROM "SYS"."OBJAUTH$" "OA","SYS"."DEPENDENCY$" "DEP",SYS."USER$" "U",SYS."OBJ$" "O",SYS."X$KZSRO" "X$KZSRO" WHERE "O"."NAME"=:B3 AND "O"."SPARE3"=:B4 AND "O"."TYPE#"=9 AND "O"."TYPE#"<>88 AND "O"."OWNER#"="U"."USER#" AND "DEP"."D_OBJ#"=:B5 AND "DEP"."P_OBJ#"="O"."OBJ#" AND "OA"."OBJ#"="O"."OBJ#" AND "OA"."PRIVILEGE#"=26 AND "OA"."GRANTEE#"="KZSROROL") OR EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE ((-"KZSPRPRV")=(-141) OR (-"KZSPRPRV")=(-241)) AND "INST_ID"=USERENV('INSTANCE'))) OR ("O"."TYPE#"=7 OR "O"."TYPE#"=8 OR "O"."TYPE#"=9 OR "O"."TYPE#"=28 OR "O"."TYPE#"=29 OR "O"."TYPE#"=30 OR "O"."TYPE#"=56) AND ( EXISTS (SELECT 0 FROM "SYS"."OBJAUTH$" "OA",SYS."X$KZSRO" "X$KZSRO" WHERE "OA"."GRANTEE#"="KZSROROL" AND "OA"."OBJ#"=:B6 AND ("OA"."PRIVILEGE#"=12 OR "OA"."PRIVILEGE#"=26)) OR EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE "INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-144) OR (-"KZSPRPRV")=(-141) OR (-"KZSPRPRV")=(-241)))) OR "O"."TYPE#"<>14 AND "O"."TYPE#"<>28 AND "O"."TYPE#"<>29 AND "O"."TYPE#"<>30 AND "O"."TYPE#"<>56 AND "O"."TYPE#"<>93 AND "O"."TYPE#"<>7 AND "O"."TYPE#"<>8 AND "O"."TYPE#"<>9 AND "O"."TYPE#"<>11 AND "O"."TYPE#"<>12 AND "O"."TYPE#"<>13 AND EXISTS (SELECT 0 FROM "SYS"."OBJAUTH$" "OBJAUTH$",SYS."X$KZSRO" "X$KZSRO" WHERE "GRANTEE#"="KZSROROL" AND "OBJ#"=:B7 AND ("PRIVILEGE#"=3 OR "PRIVILEGE#"=6 OR "PRIVILEGE#"=7 OR "PRIVILEGE#"=9 OR "PRIVILEGE#"=10 OR "PRIVILEGE#"=11 OR "PRIVILEGE#"=12 OR "PRIVILEGE#"=16 OR "PRIVILEGE#"=17 OR "PRIVILEGE#"=18)) OR "O"."TYPE#"=12 AND ( EXISTS (SELECT 0 FROM "SYS"."OBJAUTH$" "OA","SYS"."TRIGGER$" "T",SYS."X$KZSRO" "X$KZSRO" WHERE "OA"."GRANTEE#"="KZSROROL" AND "T"."OBJ#"=:B8 AND BITAND("T"."PROPERTY",24)=0 AND "OA"."OBJ#"="T"."BASEOBJECT" AND "OA"."PRIVILEGE#"=26) OR EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE ((-"KZSPRPRV")=(-152) OR (-"KZSPRPRV")=(-241)) AND "INST_ID"=USERENV('INSTANCE'))) OR "O"."TYPE#"=14 AND ( EXISTS (SELECT 0 FROM "SYS"."OBJAUTH$" "OA","SYS"."DEPENDENCY$" "DEP",SYS."USER$" "U",SYS."OBJ$" "O",SYS."X$KZSRO" "X$KZSRO" WHERE "O"."NAME"=:B9 AND "O"."SPARE3"=:B10 AND "O"."TYPE#"=13 AND "O"."TYPE#"<>88 AND "O"."OWNER#"="U"."USER#" AND "DEP"."D_OBJ#"=:B11 AND "DEP"."P_OBJ#"="O"."OBJ#" AND "OA"."OBJ#"="O"."OBJ#" AND "OA"."PRIVILEGE#"=26 AND "OA"."GRANTEE#"="KZSROROL") OR EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE ((-"KZSPRPRV")=(-181) OR (-"KZSPRPRV")=(-241)) AND "INST_ID"=USERENV('INSTANCE'))) OR ("O"."TYPE#"=66 OR "O"."TYPE#"=100) AND EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE (-"KZSPRPRV")=(-265) AND "INST_ID"=USERENV('INSTANCE')) OR ("O"."TYPE#"=67 OR "O"."TYPE#"=79) AND EXISTS (SELECT 0 FROM SYS."X$KZSPR" "X$KZSPR" WHERE ((-"KZSPRPRV")=(-265) OR (-"KZSPRPRV")=(-266)) AND "INST_ID"=USERENV('INSTANCE')) OR "O"."TYPE#"=19 AND EXISTS (SELECT 0 FROM SYS."TABPART$" "TABPART$","SYS"."OBJAUTH$" "OBJAUTH$",SYS."X$KZSRO" "X$KZSRO" WHERE "GRANTEE#"="KZSROROL" AND "BO#"="OBJ#" A) 3 - access("O"."OWNER#"="U"."USER#") 5 - access("O"."SPARE3"="U"."USER#") 7 - filter("O"."NAME"<>'_NEXT_OBJECT' AND "O"."NAME"<>'_default_auditing_options_' AND BITAND("O"."FLAGS",128)=0 AND "O"."LINKNAME" IS NULL) 8 - filter("I"."TYPE#"=1 OR "I"."TYPE#"=2 OR "I"."TYPE#"=3 OR "I"."TYPE#"=4 OR "I"."TYPE#"=6 OR "I"."TYPE#"=7 OR "I"."TYPE#"=9) 9 - access("I"."OBJ#"=:B1) 10 - access("OA"."GRANTEE#"="KZSROROL") 11 - access("OA"."OBJ#"=:B1) filter("OA"."PRIVILEGE#"=12 OR "OA"."PRIVILEGE#"=26) 13 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-184) OR (-"KZSPRPRV")=(-181) OR (-"KZSPRPRV")=(-241))) 14 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-45) OR (-"KZSPRPRV")=(-47) OR (-"KZSPRPRV")=(-48) OR (-"KZSPRPRV")=(-49) OR (-"KZSPRPRV")=(-50))) 20 - access("O"."SPARE3"=:B1 AND "O"."NAME"=:B2 AND "O"."TYPE#"=9) filter("O"."TYPE#"=9 AND "O"."TYPE#"<>88) 23 - access("O"."OWNER#"="U"."USER#") 24 - access("OA"."OBJ#"="O"."OBJ#" AND "OA"."GRANTEE#"="KZSROROL" AND "OA"."PRIVILEGE#"=26) filter("OA"."PRIVILEGE#"=26 AND "OA"."GRANTEE#"="KZSROROL") 25 - access("DEP"."D_OBJ#"=:B1) 26 - filter("DEP"."P_OBJ#"="O"."OBJ#") 27 - filter(((-"KZSPRPRV")=(-141) OR (-"KZSPRPRV")=(-241)) AND "INST_ID"=USERENV('INSTANCE')) 28 - access("OA"."GRANTEE#"="KZSROROL") 29 - access("OA"."OBJ#"=:B1) filter("OA"."PRIVILEGE#"=12 OR "OA"."PRIVILEGE#"=26) 31 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-144) OR (-"KZSPRPRV")=(-141) OR (-"KZSPRPRV")=(-241))) 33 - access("OBJ#"=:B1) filter("PRIVILEGE#"=3 OR "PRIVILEGE#"=6 OR "PRIVILEGE#"=7 OR "PRIVILEGE#"=9 OR "PRIVILEGE#"=10 OR "PRIVILEGE#"=11 OR "PRIVILEGE#"=12 OR "PRIVILEGE#"=16 OR "PRIVILEGE#"=17 OR "PRIVILEGE#"=18) 34 - filter("GRANTEE#"="KZSROROL") 37 - filter(BITAND("T"."PROPERTY",24)=0) 38 - access("T"."OBJ#"=:B1) 39 - access("OA"."OBJ#"="T"."BASEOBJECT" AND "OA"."PRIVILEGE#"=26) filter("OA"."PRIVILEGE#"=26) 40 - filter("OA"."GRANTEE#"="KZSROROL") 41 - filter(((-"KZSPRPRV")=(-152) OR (-"KZSPRPRV")=(-241)) AND "INST_ID"=USERENV('INSTANCE')) 47 - access("O"."SPARE3"=:B1 AND "O"."NAME"=:B2 AND "O"."TYPE#"=13) filter("O"."TYPE#"=13 AND "O"."TYPE#"<>88) 50 - access("O"."OWNER#"="U"."USER#") 51 - access("OA"."OBJ#"="O"."OBJ#" AND "OA"."GRANTEE#"="KZSROROL" AND "OA"."PRIVILEGE#"=26) filter("OA"."PRIVILEGE#"=26 AND "OA"."GRANTEE#"="KZSROROL") 52 - access("DEP"."D_OBJ#"=:B1) 53 - filter("DEP"."P_OBJ#"="O"."OBJ#") 54 - filter(((-"KZSPRPRV")=(-181) OR (-"KZSPRPRV")=(-241)) AND "INST_ID"=USERENV('INSTANCE')) 55 - filter((-"KZSPRPRV")=(-265) AND "INST_ID"=USERENV('INSTANCE')) 56 - filter(((-"KZSPRPRV")=(-265) OR (-"KZSPRPRV")=(-266)) AND "INST_ID"=USERENV('INSTANCE')) 60 - access("OBJ#"=:B1) 61 - access("BO#"="OBJ#" AND "PRIVILEGE#"=9) filter("PRIVILEGE#"=9) 62 - filter("GRANTEE#"="KZSROROL") 63 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-189) OR (-"KZSPRPRV")=(-190) OR (-"KZSPRPRV")=(-191) OR (-"KZSPRPRV")=(-192))) 64 - filter((-"KZSPRPRV")=(-109) AND "INST_ID"=USERENV('INSTANCE')) 65 - filter(((-"KZSPRPRV")=(-177) OR (-"KZSPRPRV")=(-178)) AND "INST_ID"=USERENV('INSTANCE')) 66 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-45) OR (-"KZSPRPRV")=(-47) OR (-"KZSPRPRV")=(-48) OR (-"KZSPRPRV")=(-49) OR (-"KZSPRPRV")=(-50))) 67 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-205) OR (-"KZSPRPRV")=(-206) OR (-"KZSPRPRV")=(-207) OR (-"KZSPRPRV")=(-208))) 68 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-200) OR (-"KZSPRPRV")=(-201) OR (-"KZSPRPRV")=(-202) OR (-"KZSPRPRV")=(-203) OR (-"KZSPRPRV")=(-204))) 69 - filter(((-"KZSPRPRV")=(-222) OR (-"KZSPRPRV")=(-223)) AND "INST_ID"=USERENV('INSTANCE')) 70 - filter((-"KZSPRPRV")=12 AND "INST_ID"=USERENV('INSTANCE')) 71 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-251) OR (-"KZSPRPRV")=(-252) OR (-"KZSPRPRV")=(-253) OR (-"KZSPRPRV")=(-254))) 72 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-258) OR (-"KZSPRPRV")=(-259) OR (-"KZSPRPRV")=(-260) OR (-"KZSPRPRV")=(-261))) 73 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-246) OR (-"KZSPRPRV")=(-247) OR (-"KZSPRPRV")=(-248) OR (-"KZSPRPRV")=(-249))) 74 - filter(((-"KZSPRPRV")=(-268) OR (-"KZSPRPRV")=(-267)) AND "INST_ID"=USERENV('INSTANCE')) 77 - filter(((-"KZSPRPRV")=(-277) OR (-"KZSPRPRV")=(-278)) AND "INST_ID"=USERENV('INSTANCE')) 78 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-292) OR (-"KZSPRPRV")=(-293) OR (-"KZSPRPRV")=(-294))) 79 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-282) OR (-"KZSPRPRV")=(-283) OR (-"KZSPRPRV")=(-284) OR (-"KZSPRPRV")=(-285))) 80 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-302) OR (-"KZSPRPRV")=(-303) OR (-"KZSPRPRV")=(-304) OR (-"KZSPRPRV")=(-305) OR (-"KZSPRPRV")=(-306) OR (-"KZSPRPRV")=(-307))) 81 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-315) OR (-"KZSPRPRV")=(-316) OR (-"KZSPRPRV")=(-317) OR (-"KZSPRPRV")=(-318))) 82 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-320) OR (-"KZSPRPRV")=(-321) OR (-"KZSPRPRV")=(-322))) 84 - access("OBJ#"=:B1) 85 - filter("GRANTEE#"="KZSROROL") 86 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-309) OR (-"KZSPRPRV")=(-310) OR (-"KZSPRPRV")=(-311) OR (-"KZSPRPRV")=(-312) OR (-"KZSPRPRV")=(-313))) 88 - access("OBJ#"=:B1) 89 - filter("GRANTEE#"="KZSROROL") 90 - filter("INST_ID"=USERENV('INSTANCE') AND ((-"KZSPRPRV")=(-302) OR (-"KZSPRPRV")=(-303) OR (-"KZSPRPRV")=(-304) OR (-"KZSPRPRV")=(-305) OR (-"KZSPRPRV")=(-306) OR (-"KZSPRPRV")=(-307))) 96 - access("C"."OBJ#"=:B1) 97 - filter("DIML"."DIMENSION_TYPE"=11) 98 - access("DIML"."DIMENSIONED_OBJECT_ID"=:B1 AND "DIML"."DIMENSIONED_OBJECT_TYPE"=1) 101 - access("DIML"."DIMENSION_ID"="DO"."OBJ#") filter("DO"."OBJ#"="DIM"."OBJ#") 103 - access("U2"."TYPE#"=2 AND "U2"."SPARE2"=TO_NUMBER(SYS_CONTEXT('userenv','current_edition_id'))) filter("U2"."TYPE#"=2 AND "U2"."SPARE2"=TO_NUMBER(SYS_CONTEXT('userenv','current_edition_id'))) 104 - access("O2"."DATAOBJ#"=:B1 AND "O2"."TYPE#"=88 AND "O2"."OWNER#"="U2"."USER#") SYS@XE>
JasonWelcome to the forum!
Every time you post please provide your Oracle Version 4-digit (result of SELECT * FROM V$ VERSION).
>
So, first question, why I get this error? Object should be available to everyone, right?
>
Your username may have access to object. But you must have dba privileges to access the objects of database views.The "ORA-01039: insufficient privileges on the underlying objects of the view" message tells you that the user has privileges to access the BASIC OBJECTS used to generate the view. Access to these basic objects is necessary to generate the plan you want to see. To work around this, I connect as sysdba and get the second question: the following extremely verbose output
>
And that's because sysdba has access to objects in the view database. You asked for a plan, and you guessed it. This verbose output IS the plan and all those that oddly named tables are presented in order to satisfy your request are included in the plan.Make your query using DUAL citizenship or SCOTT. Table EMP and you will not get the error.
Maybe you are looking for
-
Can I connect an Imac 24 inch, mid-2007 in Spain American?
I have a 24 inch American mid 2007 Imac, but I just move to Spain and I want to use it here. THE CORD is BED 125v (it's a small label on the cord) and in Spain, power is 240v, does that mean I need to buy a transformer? I have only a converter for th
-
Is there anyone who can suggest why my HARD drive down. Kind regards. / Sunil
-
How to download pictures to a usb card by copying and pasting
How to upload photos to card usb using the copy and past
-
I have more than 13, ooo for that error. It says customer EEU ATI has failed to start. I was not sure what to choose as a topic of windows. Its has been done since the beginning of January. I don't know what it is.
-
BIOS is not updated (no error)
Hello I got a Dell Latitude E6530. The system is completely up to date with the exception of the BIOS. "Scan my system updates" on the Dell site shows that "Dell Latitude E6530 system BIOS A11" is available (current is A09). The downloaded executable