Do i need to tune the redolog?

10g R2 on AIX 5.3L
this is a typical alert file about the redo log file switching of the day.
Mon May 28 01:26:33 2007
Thread 1 advanced to log sequence 24017
Current log# 4 seq# 24017 mem# 0: /u020/apps/oracle/oradata/BAAN/redo04.log
Mon May 28 08:04:13 2007
Thread 1 advanced to log sequence 24018
Current log# 5 seq# 24018 mem# 0: /u020/apps/oracle/oradata/BAAN/redo05.log
Mon May 28 08:05:56 2007
Thread 1 advanced to log sequence 24019
Current log# 3 seq# 24019 mem# 0: /u020/apps/oracle/oradata/BAAN/redo03.log
Mon May 28 08:07:29 2007
Thread 1 advanced to log sequence 24020
Current log# 2 seq# 24020 mem# 0: /u020/apps/oracle/oradata/BAAN/redo02.log
Mon May 28 08:08:55 2007
Thread 1 advanced to log sequence 24021
Current log# 1 seq# 24021 mem# 0: /u020/apps/oracle/oradata/BAAN/redo01.log
Mon May 28[b] 08:10:26 2007
Thread 1 advanced to log sequence 24022
Current log# 4 seq# 24022 mem# 0: /u020/apps/oracle/oradata/BAAN/redo04.log
Mon May 28 08:12:05 2007
Thread 1 advanced to log sequence 24023
Current log# 5 seq# 24023 mem# 0: /u020/apps/oracle/oradata/BAAN/redo05.log
Mon May 28 08:13:55 2007
Thread 1 advanced to log sequence 24024
Current log# 3 seq# 24024 mem# 0: /u020/apps/oracle/oradata/BAAN/redo03.log
Mon May 28 11:31:05 2007
Thread 1 advanced to log sequence 24025
Current log# 2 seq# 24025 mem# 0: /u020/apps/oracle/oradata/BAAN/redo02.log
Mon May 28 14:36:13 2007
Thread 1 advanced to log sequence 24026
Current log# 1 seq# 24026 mem# 0: /u020/apps/oracle/oradata/BAAN/redo01.log
Do I need to tune the redo log? Each of redo log file is 50MB. It switched more frequent when there are not many users than real busy hours.
null

Select may or may not generate redo. Delayed block cleanout is one of the reasons for a query to produce redo: https://metalink.oracle.com/metalink/plsql/f?p=130:14:2631437878498686237::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,40689.1,1,1,1,helvetica#aref1
Another reason is locking the rows with "for update":
SQL> create table t1 as select * from all_objects;
Table created.
SQL> set autot trace stat
SQL> select * from t1;
39310 rows selected.
Statistics
          0  recursive calls
          0  db block gets
       3117  consistent gets
        538  physical reads
          0  redo size
    2524195  bytes sent via SQL*Net to client
      18612  bytes received via SQL*Net from client
       2622  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
      39310  rows processed
SQL> select * from t1 for update;
39310 rows selected.
Statistics
         24  recursive calls
      40020  db block gets
      43446  consistent gets
        625  physical reads
    7754052  redo size
    3501635  bytes sent via SQL*Net to client
      18612  bytes received via SQL*Net from client
       2622  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
      39310  rows processed

Similar Messages

  • Do I need to tune the base query of my materialized view ?

    Hi gurus,
    We implement materialized view (FAST REFRESH ON COMMIT) on base table used in OLTP system. In fact the MV itself is also queried by the OLTP system itself, interactively.
    Currently user complain that after they input transaction, they see that the MV is not refresh as soon as they commit the transaction.
    (it takes 5 to 10 minutes before they see the update on the MV)
    The query of the MV is attached below, it consists of union all of two queries but actually the real query has 13 queries on a UNION ALL.
    The question is :
    Do I need to tune the query that forms the MV ?
    Does it impact the refresh time of the MV ?
    Thank you for your help,
    xtanto
    SELECT GRNH.DOC_CODE ||' '|| GRNH.GRN_NO, GRNH.GRN_DATE, GRNH.REGS_CODE,
    F_Convert_Qty_K(GRND.PRODUCT, GRND.QTY, GRND.UOM) QTY_IN, 0 QTY_OUT, 0 QTY_ADJ, 'N/A'.....
    FROM GRN_LOCAL_D GRND
              JOIN GRN_LOCAL_H GRNH ON GRNH.GRNH_ID = GRND.GRNH_ID
              WHERE GRND.PRODUCT IS NOT NULL AND GRNH.WH_CODE IS NOT NULL
    UNION ALL
    SELECT GRNH.DOC_CODE ||' '|| GRNH.GRN_NO, GRNH.GRN_DATE, GRNH.REGS_CODE,
    F_Convert_Qty_K(GRND.PRODUCT_B, GRND.QTY_B, GRND.UOM_B) QTY_IN, 0 QTY_OUT, 0 QTY_ADJ, 'N/A'...
    FROM GRN_LOCAL_D GRND
    JOIN GRN_LOCAL_H GRNH ON GRNH.GRNH_ID = GRND.GRNH_ID
    WHERE GRND.PRODUCT_B IS NOT NULL AND GRNH.WH_CODE IS NOT NULL
    UNION ALL
         ......

    Hi Justin & APC,
    Are they seeing a 5-10 minute delay in being able to commit their transaction?NO, the commit itself is completed normally, but after that when they go to the page (this is webbased app) that display data from the MV, the newly committed transactionis not there yet. Only after 5-10 minutes we can see the new data.
    What does the F_Convert_Qty_K() function do?It is a function that convert the quantity from whatever Unit Of Measurement (UOM) into the smallest UOM. Below is the code.
    So the question remains:
    why intermittently theere is delay before the new data visible in the MV ?
    Thanks you,
    xtanto
    CREATE OR REPLACE FUNCTION F_Convert_Qty (pProduct VARCHAR2, pQty NUMBER, pUOM VARCHAR2)
    RETURN NUMBER
    IS
    vQtyBase NUMBER(13,5);
    BEGIN
    SELECT CASE WHEN pUOM = ( SELECT UOM_BASE FROM PRODUCTS WHERE PRODUCT = pProduct)
              THEN pQty
         ELSE
                   SELECT ROUND(pQty * Coefficient / Divisor, 5)
                   FROM (
                             SELECT Coefficient, Divisor FROM CONVERT_UOM
                             WHERE PRODUCT = pProduct AND UOM_CONVERT = pUOM
                             ) tmp
              END INTO vQtyBase FROM DUAL;
    --RETURN (vQtyBase) ;
    RETURN ( NVL(vQtyBase,0) ) ;
    END F_Convert_Qty;
    /

  • Need to tune the sql query

    Hi,
    PLease help me to tune the query
    select primary_rep,
    rep_ssn,
    nvl(product_type_desc, 'UNKNOWN') as productName,
    ROUND(sum(contributions)) as contribution,
    ROUND(sum(withdrawls)) as withdrawls,
    ROUND(sum(netflow)) as netflow
    from dev.NETFLOW_VIEW_TSS_P
    where bd = 'TSS'
    and actvtydate between '01-Jan-2011' and '30-Sep-2011'     
    and rep_ssn IN (select tax_id from broker_view where broker_id = '600468')
    group by primary_rep, rep_ssn, nvl(product_type_desc, 'UNKNOWN');
    explain plan details below
    | Id  | Operation                                     | Name                        | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     | Pstart| Pstop |
    |   0 | SELECT STATEMENT                              |                             |    79 |   158K|       | 74348   (1)| 00:14:53 |       |       |
    |   1 |  HASH GROUP BY                                |                             |    79 |   158K|       | 74348   (1)| 00:14:53 |       |       |
    |*  2 |   HASH JOIN                                   |                             |    79 |   158K|       | 74347   (1)| 00:14:53 |       |       |
    |   3 |    VIEW                                       | VW_NSO_1                    |     1 |     6 |       |    18  (17)| 00:00:01 |       |       |
    |   4 |     HASH UNIQUE                               |                             |     1 |   100 |       |    18  (17)| 00:00:01 |       |       |
    |   5 |      NESTED LOOPS OUTER                       |                             |     1 |   100 |       |    17  (12)| 00:00:01 |       |       |
    |   6 |       MERGE JOIN CARTESIAN                    |                             |     1 |    92 |       |    17  (12)| 00:00:01 |       |       |
    |   7 |        NESTED LOOPS OUTER                     |                             |     1 |    71 |       |    15  (14)| 00:00:01 |       |       |
    |   8 |         NESTED LOOPS OUTER                    |                             |     1 |    67 |       |    12  (17)| 00:00:01 |       |       |
    |*  9 |          HASH JOIN OUTER                      |                             |     1 |    63 |       |    10  (20)| 00:00:01 |       |       |
    |  10 |           NESTED LOOPS OUTER                  |                             |     1 |    56 |       |     6   (0)| 00:00:01 |       |       |
    |  11 |            NESTED LOOPS OUTER                 |                             |     1 |    52 |       |     4   (0)| 00:00:01 |       |       |
    |  12 |             TABLE ACCESS BY INDEX ROWID       | AFFILIATE                   |     1 |    45 |       |     2   (0)| 00:00:01 |       |       |
    |* 13 |              INDEX UNIQUE SCAN                | AFFILIATE_PK                |     1 |       |       |     1   (0)| 00:00:01 |       |       |
    |* 14 |             TABLE ACCESS FULL                 | PORTAL_BROKER               |     1 |     7 |       |     2   (0)| 00:00:01 |       |       |
    |  15 |            VIEW PUSHED PREDICATE              |                             |     1 |     4 |       |     2   (0)| 00:00:01 |       |       |
    |  16 |             NESTED LOOPS                      |                             |     1 |    28 |       |     2   (0)| 00:00:01 |       |       |
    |  17 |              NESTED LOOPS                     |                             |     1 |    21 |       |     2   (0)| 00:00:01 |       |       |
    |* 18 |               TABLE ACCESS BY INDEX ROWID     | LOCATION_GROUP_TYPE_DESC    |     1 |     5 |       |     1   (0)| 00:00:01 |       |       |
    |* 19 |                INDEX UNIQUE SCAN              | LOCATION_GROUP_TYPE_DESC_PK |     1 |       |       |     0   (0)| 00:00:01 |       |       |
    |* 20 |               INDEX RANGE SCAN                | LOCATION_GROUP_UK           |     1 |    16 |       |     1   (0)| 00:00:01 |       |       |
    |* 21 |              INDEX UNIQUE SCAN                | CONTACT_METHOD_PK           |     1 |     7 |       |     0   (0)| 00:00:01 |       |       |
    |  22 |           VIEW                                |                             |     1 |     7 |       |     3  (34)| 00:00:01 |       |       |
    |  23 |            HASH UNIQUE                        |                             |     1 |    11 |       |     3  (34)| 00:00:01 |       |       |
    |* 24 |             INDEX RANGE SCAN                  | AFFILIATE_TYPE_PK           |     1 |    11 |       |     2   (0)| 00:00:01 |       |       |
    |  25 |          VIEW PUSHED PREDICATE                |                             |     1 |     4 |       |     2   (0)| 00:00:01 |       |       |
    |  26 |           NESTED LOOPS                        |                             |     1 |    28 |       |     2   (0)| 00:00:01 |       |       |
    |  27 |            NESTED LOOPS                       |                             |     1 |    21 |       |     2   (0)| 00:00:01 |       |       |
    |* 28 |             TABLE ACCESS BY INDEX ROWID       | LOCATION_GROUP_TYPE_DESC    |     1 |     5 |       |     1   (0)| 00:00:01 |       |       |
    |* 29 |              INDEX UNIQUE SCAN                | LOCATION_GROUP_TYPE_DESC_PK |     1 |       |       |     0   (0)| 00:00:01 |       |       |
    |* 30 |             INDEX RANGE SCAN                  | LOCATION_GROUP_UK           |     1 |    16 |       |     1   (0)| 00:00:01 |       |       |
    |* 31 |            INDEX UNIQUE SCAN                  | CONTACT_METHOD_PK           |     1 |     7 |       |     0   (0)| 00:00:01 |       |       |
    |  32 |         VIEW PUSHED PREDICATE                 |                             |     1 |     4 |       |     3   (0)| 00:00:01 |       |       |
    |  33 |          NESTED LOOPS OUTER                   |                             |     1 |    35 |       |     3   (0)| 00:00:01 |       |       |
    |  34 |           NESTED LOOPS                        |                             |     1 |    32 |       |     3   (0)| 00:00:01 |       |       |
    |  35 |            NESTED LOOPS                       |                             |     1 |    22 |       |     2   (0)| 00:00:01 |       |       |
    |* 36 |             TABLE ACCESS BY INDEX ROWID       | LOCATION_GROUP_TYPE_DESC    |     1 |     5 |       |     1   (0)| 00:00:01 |       |       |
    |* 37 |              INDEX UNIQUE SCAN                | LOCATION_GROUP_TYPE_DESC_PK |     1 |       |       |     0   (0)| 00:00:01 |       |       |
    |* 38 |             INDEX RANGE SCAN                  | LOCATION_GROUP_UK           |     1 |    17 |       |     1   (0)| 00:00:01 |       |       |
    |  39 |            TABLE ACCESS BY INDEX ROWID        | ADDRESS                     |     1 |    10 |       |     1   (0)| 00:00:01 |       |       |
    |* 40 |             INDEX UNIQUE SCAN                 | ADDRESS_PK                  |     1 |       |       |     0   (0)| 00:00:01 |       |       |
    |* 41 |           INDEX UNIQUE SCAN                   | PROV_STDSC_PK               |     1 |     3 |       |     0   (0)| 00:00:01 |       |       |
    |  42 |        BUFFER SORT                            |                             |     1 |    21 |       |    14  (15)| 00:00:01 |       |       |
    |* 43 |         INDEX RANGE SCAN                      | I_BROKER_BKBRCMB            |     1 |    21 |       |     2   (0)| 00:00:01 |       |       |
    |* 44 |       INDEX UNIQUE SCAN                       | BROKER_BRANCH_PK            |     1 |     8 |       |     0   (0)| 00:00:01 |       |       |
    |  45 |    VIEW                                       | NETFLOW_VIEW_TSS_P          |   391K|   766M|       | 74325   (1)| 00:14:52 |       |       |
    |  46 |     UNION-ALL                                 |                             |       |       |       |            |          |       |       |
    |* 47 |      HASH JOIN RIGHT OUTER                    |                             | 11645 |  1671K|       | 49023   (1)| 00:09:49 |       |       |
    |  48 |       VIEW                                    |                             |     1 |    38 |       | 13602   (1)| 00:02:44 |       |       |
    |* 49 |        FILTER                                 |                             |       |       |       |            |          |       |       |
    |  50 |         TABLE ACCESS FULL                     | SALES_REPORT_REP_MAPPING    |  9023 |   326K|       |    58   (2)| 00:00:01 |       |       |
    |* 51 |         FILTER                                |                             |       |       |       |            |          |       |       |
    |  52 |          SORT GROUP BY NOSORT                 |                             |     1 |    11 |       |     3   (0)| 00:00:01 |       |       |
    |  53 |           TABLE ACCESS BY INDEX ROWID         | SALES_REPORT_REP_MAPPING    |     1 |    11 |       |     3   (0)| 00:00:01 |       |       |
    |* 54 |            INDEX RANGE SCAN                   | I_SAL_REP_MAP_REPID         |     1 |       |       |     2   (0)| 00:00:01 |       |       |
    |  55 |       NESTED LOOPS                            |                             | 11645 |  1239K|       | 35420   (1)| 00:07:06 |       |       |
    |* 56 |        HASH JOIN RIGHT OUTER                  |                             | 11645 |   898K|       | 12112   (1)| 00:02:26 |       |       |
    |  57 |         INDEX FAST FULL SCAN                  | I_VENDORS_ACCTLOC           |   986 |  3944 |       |     2   (0)| 00:00:01 |       |       |
    |* 58 |         HASH JOIN RIGHT OUTER                 |                             | 11645 |   852K|       | 12109   (1)| 00:02:26 |       |       |
    |* 59 |          MAT_VIEW ACCESS FULL                 | SECS_DESC                   | 26777 |   418K|       |  3082   (1)| 00:00:37 |       |       |
    |* 60 |          FILTER                               |                             |       |       |       |            |          |       |       |
    |* 61 |           HASH JOIN RIGHT OUTER               |                             | 11645 |   670K|       |  9026   (1)| 00:01:49 |       |       |
    |  62 |            MAT_VIEW ACCESS FULL               | ENTRYCODES                  |  1640 | 11480 |       |     8   (0)| 00:00:01 |       |       |
    |* 63 |            HASH JOIN                          |                             | 34936 |  1774K|       |  9017   (1)| 00:01:49 |       |       |
    |* 64 |             INDEX FULL SCAN                   | I_CODE                      |    30 |   420 |       |     1   (0)| 00:00:01 |       |       |
    |  65 |             PARTITION RANGE ALL               |                             |   342K|    12M|       |  9013   (1)| 00:01:49 |     1 |    20 |
    |  66 |              TABLE ACCESS BY LOCAL INDEX ROWID| BKPG                        |   342K|    12M|       |  9013   (1)| 00:01:49 |     1 |    20 |
    |* 67 |               INDEX RANGE SCAN                | I_BKPG_ACT_REC_IDX          |   342K|       |       |  1412   (1)| 00:00:17 |     1 |    20 |
    |  68 |        TABLE ACCESS BY INDEX ROWID            | ACCT_CUBE                   |     1 |    30 |       |     2   (0)| 00:00:01 |       |       |
    |* 69 |         INDEX UNIQUE SCAN                     | ACCT_CUBE_PK                |     1 |       |       |     1   (0)| 00:00:01 |       |       |
    |* 70 |      HASH JOIN RIGHT OUTER                    |                             |   379K|    52M|       | 25303   (1)| 00:05:04 |       |       |
    |  71 |       VIEW                                    |                             |     1 |    38 |       | 13602   (1)| 00:02:44 |       |       |
    |* 72 |        FILTER                                 |                             |       |       |       |            |          |       |       |
    |  73 |         TABLE ACCESS FULL                     | SALES_REPORT_REP_MAPPING    |  9023 |   326K|       |    58   (2)| 00:00:01 |       |       |
    |* 74 |         FILTER                                |                             |       |       |       |            |          |       |       |
    |  75 |          SORT GROUP BY NOSORT                 |                             |     1 |    11 |       |     3   (0)| 00:00:01 |       |       |
    |  76 |           TABLE ACCESS BY INDEX ROWID         | SALES_REPORT_REP_MAPPING    |     1 |    11 |       |     3   (0)| 00:00:01 |       |       |
    |* 77 |            INDEX RANGE SCAN                   | I_SAL_REP_MAP_REPID         |     1 |       |       |     2   (0)| 00:00:01 |       |       |
    |* 78 |       HASH JOIN                               |                             |   379K|    39M|    33M| 11696   (2)| 00:02:21 |       |       |
    |* 79 |        HASH JOIN                              |                             |   379K|    28M|       |  3210   (2)| 00:00:39 |       |       |
    |* 80 |         INDEX FAST FULL SCAN                  | I_VENDORS_ACCTLOC           |   986 |  3944 |       |     2   (0)| 00:00:01 |       |       |
    |* 81 |         HASH JOIN                             |                             |   379K|    27M|    14M|  3204   (2)| 00:00:39 |       |       |
    |  82 |          INDEX FAST FULL SCAN                 | SECS_DESC_PK                |   744K|  6545K|       |   457   (3)| 00:00:06 |       |       |
    |* 83 |          FILTER                               |                             |       |       |       |            |          |       |       |
    |* 84 |           HASH JOIN RIGHT OUTER               |                             |   379K|    24M|       |   569   (3)| 00:00:07 |       |       |
    |  85 |            MAT_VIEW ACCESS FULL               | MFENTRYCODES                |  6853 | 61677 |       |    15   (0)| 00:00:01 |       |       |
    |  86 |            PARTITION RANGE ALL                |                             |  1138K|    62M|       |   542   (1)| 00:00:07 |     1 |    15 |
    |* 87 |             TABLE ACCESS BY LOCAL INDEX ROWID | MFBKPG                      |  1138K|    62M|       |   542   (1)| 00:00:07 |     1 |    15 |
    |* 88 |              INDEX RANGE SCAN                 | I_MFBKPGP_ACTDT_ACCT_TST    |   904 |       |       |   107   (0)| 00:00:02 |     1 |    15 |
    |  89 |        INDEX FAST FULL SCAN                   | I_ACCT_CUBE_REPID_MKT       |  1952K|    52M|       |  3096   (2)| 00:00:38 |       |       |
    Predicate Information (identified by operation id):
       2 - access("REP_SSN"="$nso_col_1")
       9 - access("A"."AFFILIATE_ID"="MGR"."AFFILIATE_ID"(+))
      13 - access("A"."AFFILIATE_ID"='600468')
      14 - filter("PORTAL_BROKER"."BROKER_ID"(+)='600468')
      18 - filter("LT"."ADDRESS_CONTACT_IND"='C')
      19 - access("LT"."LOCATION_GROUP_TYPE_CODE"='WF')
      20 - access("L"."LOCATION_GROUP_TYPE_CODE"='WF' AND "L"."AFFILIATE_ID"="A"."AFFILIATE_ID")
           filter("L"."CONTACT_METHOD_ID" IS NOT NULL)
      21 - access("L"."CONTACT_METHOD_ID"="B"."CONTACT_METHOD_ID")
      24 - access("AFFILIATE_ID"='600468')
           filter("AFFILIATE_TYPE"='BBE' OR "AFFILIATE_TYPE"='BRM' OR "AFFILIATE_TYPE"='ISP')
      28 - filter("LT"."ADDRESS_CONTACT_IND"='C')
      29 - access("LT"."LOCATION_GROUP_TYPE_CODE"='WT')
      30 - access("L"."LOCATION_GROUP_TYPE_CODE"='WT' AND "L"."AFFILIATE_ID"="A"."AFFILIATE_ID")
           filter("L"."CONTACT_METHOD_ID" IS NOT NULL)
      31 - access("L"."CONTACT_METHOD_ID"="B"."CONTACT_METHOD_ID")
      36 - filter("LT"."ADDRESS_CONTACT_IND"='A')
      37 - access("LT"."LOCATION_GROUP_TYPE_CODE"='WM')
      38 - access("L"."LOCATION_GROUP_TYPE_CODE"='WM' AND "L"."AFFILIATE_ID"="A"."AFFILIATE_ID")
           filter("L"."ADDRESS_ID" IS NOT NULL)
      40 - access("L"."ADDRESS_ID"="A"."ADDRESS_ID")
      41 - access("A"."PROVINCE_STATE_CODE"="S"."PROVINCE_STATE_CODE"(+))
      43 - access("B"."BROKER_ID"='600468')
      44 - access("B"."BRANCH_ID"="BR"."BRANCH_ID"(+))
      47 - access("B"."REPID"="K"."REPID"(+))
      49 - filter( EXISTS (SELECT 0 FROM DEV."SALES_REPORT_REP_MAPPING" "SALES_REPORT_REP_MAPPING" WHERE "REPID"=:B1 GROUP BY "REPID" HAVING
                  SUM(NVL("PCT",100))=100))
      51 - filter(SUM(NVL("PCT",100))=100)
      54 - access("REPID"=:B1)
      56 - access(NVL("V"."VENDOR_CD"(+),'xxx')=NVL("VENDOR_CD",'yyy'))
      58 - access("CUSIP"(+)="A"."CUSIP")
      59 - filter("COMM_SECTYPE"(+)='MF')
      60 - filter(NVL("Z"."PERF_INCLUDE_PORTFOLIO",'xx')='Y')
      61 - access("A"."ENTRYCODE"="Z"."ENTRYCODE"(+))
      63 - access("CODE_IN"=SUBSTR("A"."ACCT",1,3))
      64 - access("CODE_TYPE"='NETFLOW')
           filter("CODE_TYPE"='NETFLOW')
      67 - access("A"."ACTVTYDATE">=TO_DATE(' 2011-01-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "A"."ACTVTYDATE"<=TO_DATE(' 2011-09-30
                  00:00:00', 'syyyy-mm-dd hh24:mi:ss'))
      69 - access("B"."ACCOUNTKEY"='11,,,'||"A"."ACCT")
      70 - access("A"."REPID"="K"."REPID"(+))
      72 - filter( EXISTS (SELECT 0 FROM DEV."SALES_REPORT_REP_MAPPING" "SALES_REPORT_REP_MAPPING" WHERE "REPID"=:B1 GROUP BY "REPID" HAVING
                  SUM(NVL("PCT",100))=100))
      74 - filter(SUM(NVL("PCT",100))=100)
      77 - access("REPID"=:B1)
      78 - access("A"."ACCOUNTKEY"='20,'||"B"."VENDOR_CD"||','||"B"."FUNDNO"||','||"B"."ACCT")
      79 - access("V"."VENDOR_CD"="B"."VENDOR_CD")
      80 - filter("V"."VENDOR_CD"<>'HNR' AND "V"."VENDOR_CD"<>'CNL' AND "V"."VENDOR_CD"<>'IRE' AND "V"."VENDOR_CD"<>'WLR' AND
                  "V"."VENDOR_CD"<>'WLP' AND "V"."VENDOR_CD"<>'PER' AND "V"."VENDOR_CD"<>'BHV')
      81 - access("SD"."CUSIP"="B"."CUSIP")
      83 - filter(NVL("E"."PERF_INCLUDE_PORTFOLIO",'xx')='Y')
      84 - access("B"."ENTRYCODE"="E"."ENTRYCODE"(+))
      87 - filter("B"."VENDOR_CD"<>'HNR' AND "B"."VENDOR_CD"<>'CNL' AND "B"."VENDOR_CD"<>'IRE' AND "B"."VENDOR_CD"<>'WLR' AND
                  "B"."VENDOR_CD"<>'WLP' AND "B"."VENDOR_CD"<>'PER' AND "B"."VENDOR_CD"<>'BHV')
      88 - access(SYS_OP_DESCEND("ACTVTYDATE")>=HEXTORAW('8790F6E1FEF8FEFAFF')  AND SYS_OP_DESCEND("ACTVTYDATE")<=HEXTORAW('8790FEF8FEF8FEFAFF')
           filter(SYS_OP_UNDESCEND(SYS_OP_DESCEND("ACTVTYDATE"))>=TO_DATE(' 2011-01-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
                  SYS_OP_UNDESCEND(SYS_OP_DESCEND("ACTVTYDATE"))<=TO_DATE(' 2011-09-30 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))
    158 rows selected.Thanks

    So this is a VIEW with I think 18 tables (I may have missed one or two), some of which are referenced more than one. Some of these tables have tens of miilions of rows. What exactly are you expecting from us?
    I guess this is a data warehouse or BI query. Sometimes such queries just take an age to run and there's nothing which can be done except result caching. Other times the queries can be tuned, but iit requires way more context and domain knowledge than you have provided.
    Please start by reading [url https://forums.oracle.com/forums/thread.jspa?threadID=2174552#9360003]this FAQ. .
    Cheers, APC

  • Help needed to tune the Query:Statistics added

    Can someone DBA please help me to tune this query:
    SELECT DISTINCT K.ATTRIBUTE_VALUE AGENCY_ID,B.PROFILE_NM ,NVL(G.OFFICE_DESC,'--') OFFICE_DESC,f.OFFICE_ID,B.PROFILE_ID,'%' ROLE,'%' LAYOUT,
    CASE
    WHEN 'flagB' = '%' THEN
    NVL(J.ISS_GRP_DESC,'BILLING')
    WHEN 'flagO' = '%' THEN
    NVL(J.ISS_GRP_DESC,'ORDERING')
    WHEN 'flag' = '%' THEN
    NVL(J.ISS_GRP_DESC,'BILLING/ORDERING')
    ELSE
    NVL(J.ISS_GRP_DESC,' ')
    END ISS_GRP_DESC,
    DECODE(NVL(H.USERID,' ') ,' ','--','<a sbcuid_in=' || H.USERID || ' target=NEW >'||H.FIRSTNAME || ' ' || H.LASTNAME || '( ' || H.USERID || ' )</a>' ) USER_NAME
    FROM
    PROFILE_PORTAL B ,
    TBL_BDA_AGENCY_RESP_REP C ,
    TBL_BDA_AGENCY_OFFICE F,
    TBL_BDA_OFFICE G,
    USERS_PORTAL H,
    TBL_BDA_USR_ISS_GRP I ,
    TBL_BDA_ISS_GROUP J,
    ATTRIBUTE_VALUES_PORTAL K,
    PROFILE_TYPE_PORTAL L
    WHERE
    B.PROFILE_ID = F.AGENCY_ID (+)
    AND B.PROFILE_ID = C.AGENCY_ID (+)
    AND G.OFFICE_ID (+)= F.OFFICE_ID
    AND H.USERID (+)= C.RESP_USR_ID
    AND C.ISS_GRP_ID = I.ISS_GRP_ID (+)
    AND I.ISS_GRP_ID = J.ISS_GRP_ID(+)
    AND 'PROFILE.'||B.PROFILE_ID = K.ENTITY_ID(+)
    AND K.ATTRIBUTE_VALUE IS NOT NULL
    AND L.PROFILE_TYPE_ID = B.PROFILE_TYPE_ID
    AND L.APPLICATION_CD='BDA'
    AND NOT EXISTS (SELECT agency_id
    FROM TBL_BDA_AGENCY_RESP_REP t
    WHERE t.ISS_GRP_ID IN ('%')
    AND t.AGENCY_ID = C.AGENCY_ID)
    AND K.ATTRIBUTE_VALUE LIKE '%'
    AND UPPER(B.PROFILE_NM) LIKE UPPER('%')
    AND (to_char(NVL(B.PROFILE_ID,0)) LIKE '%' OR NVL(B.PROFILE_ID,0) IN ('a'))
    AND NVL(G.OFFICE_ID,0) IN ('%')
    AND (to_char(NVL(C.RESP_USR_ID,'0')) LIKE '%' OR NVL(C.RESP_USR_ID,'0') IN ('k'))
    ORDER BY PROFILE_NM
    The number of rows in these tables are as follows:
    PROFILE_PORTAL -- 2392
    TBL_BDA_AGENCY_RESP_REP 3508
    TBL_BDA_AGENCY_OFFICE 2151
    TBL_BDA_OFFICE 3
    USERS_PORTAL 270500
    TBL_BDA_USR_ISS_GRP 234
    TBL_BDA_ISS_GROUP 2
    ATTRIBUTE_VALUES_PORTAL 2790
    PROFILE_TYPE_PORTAL 3
    The Explain pal nhas given this o/p to me:
    SQL> select * from table(dbms_xplan.display) dual;
    PLAN_TABLE_OUTPUT
    | Id | Operation | Name | Rows | Bytes |TempSpc| Cost |
    | 0 | SELECT STATEMENT | | 807 | 102K| | 2533 |
    | 1 | SORT UNIQUE | | 807 | 102K| 232K| 82 |
    |* 2 | FILTER | | | | | |
    |* 3 | HASH JOIN OUTER | | 807 | 102K| | 52 |
    |* 4 | HASH JOIN OUTER | | 807 | 95226 | | 40 |
    |* 5 | TABLE ACCESS BY INDEX ROWID | ATTRIBUTE_VALUES | 1 | 23 | | 2 |
    | 6 | NESTED LOOPS | | 7 | 805 | | 37 |
    | 7 | NESTED LOOPS OUTER | | 6 | 552 | | 25 |
    |* 8 | FILTER | | | | | |
    | 9 | NESTED LOOPS OUTER | | | | | |
    |* 10 | FILTER | | | | | |
    | 11 | NESTED LOOPS OUTER | | | | | |
    | 12 | NESTED LOOPS OUTER | | 3 | 141 | | 10 |
    |* 13 | HASH JOIN | | 3 | 120 | | 7 |
    |* 14 | TABLE ACCESS FULL | PROFILE | 6 | 198 | | 4 |
    |* 15 | TABLE ACCESS FULL | PROFILE_TYPE | 1 | 7 | | 2 |
    |* 16 | INDEX RANGE SCAN | SYS_C0019777 | 1 | 7 | | 1 |
    | 17 | TABLE ACCESS BY INDEX ROWID| TBL_BDA_OFFICE | 1 | 10 | | 1 |
    |* 18 | INDEX UNIQUE SCAN | SYS_C0019800 | 1 | | | |
    | 19 | TABLE ACCESS BY INDEX ROWID | TBL_BDA_AGENCY_RESP_REP | 2 | 26 | | 2 |
    |* 20 | INDEX RANGE SCAN | IDX_AGECYRESP_AGNCYID | 2 | | | 1 |
    | 21 | TABLE ACCESS BY INDEX ROWID | USER_ | 1 | 22 | | 1 |
    |* 22 | INDEX UNIQUE SCAN | USER_PK | 1 | | | |
    |* 23 | INDEX RANGE SCAN | IDX_ATTVAL_ENTATTID | 1 | | | 1 |
    | 24 | TABLE ACCESS FULL | TBL_BDA_USR_ISS_GRP | 234 | 702 | | 2 |
    | 25 | TABLE ACCESS FULL | TBL_BDA_ISS_GROUP | 2 | 24 | | 2 |
    |* 26 | TABLE ACCESS BY INDEX ROWID | TBL_BDA_AGENCY_RESP_REP | 1 | 7 | | 3 |
    |* 27 | INDEX RANGE SCAN | IDX_AGECYRESP_AGNCYID | 2 | | | 1 |
    Predicate Information (identified by operation id):
    2 - filter( NOT EXISTS (SELECT /*+ */ 0 FROM "TBL_BDA_AGENCY_RESP_REP" "T" WHERE "T"."AGENCY_ID"=:B1
    AND "T"."ISS_GRP_ID"=TO_NUMBER('%')))
    3 - access("I"."ISS_GRP_ID"="J"."ISS_GRP_ID"(+))
    4 - access("SYS_ALIAS_1"."ISS_GRP_ID"="I"."ISS_GRP_ID"(+))
    5 - filter("K"."ATTRIBUTE_VALUE" IS NOT NULL AND "K"."ATTRIBUTE_VALUE" LIKE '%')
    8 - filter(NVL("SYS_ALIAS_1"."RESP_USR_ID",'0') LIKE '%' OR NVL("SYS_ALIAS_1"."RESP_USR_ID",'0')='k')
    10 - filter(NVL("G"."OFFICE_ID",0)=TO_NUMBER('%'))
    13 - access("L"."PROFILE_TYPE_ID"="B"."PROFILE_TYPE_ID")
    14 - filter(UPPER("B"."PROFILE_NM") LIKE '%' AND (TO_CHAR(NVL("B"."PROFILE_ID",0)) LIKE '%' OR
    NVL("B"."PROFILE_ID",0)=TO_NUMBER('a')))
    15 - filter("L"."APPLICATION_CD"='BDA')
    16 - access("B"."PROFILE_ID"="F"."AGENCY_ID"(+))
    18 - access("G"."OFFICE_ID"(+)="F"."OFFICE_ID")
    20 - access("B"."PROFILE_ID"="SYS_ALIAS_1"."AGENCY_ID"(+))
    22 - access("H"."USERID"(+)="SYS_ALIAS_1"."RESP_USR_ID")
    23 - access("K"."ENTITY_ID"='PROFILE.'||TO_CHAR("B"."PROFILE_ID"))
    26 - filter("T"."ISS_GRP_ID"=TO_NUMBER('%'))
    27 - access("T"."AGENCY_ID"=:B1)
    Note: cpu costing is off
    57 rows selected.
    Elapsed: 00:00:01.08
    Please help me.
    Aashish S.

    Hello Eric,
    Here is the code:
    SELECT DISTINCT
    K.ATTRIBUTE_VALUE AGENCY_ID,
    B.PROFILE_NM ,
    NVL(G.OFFICE_DESC,'--') OFFICE_DESC,
    f.OFFICE_ID,
    B.PROFILE_ID,
    '%' ROLE,
    '%' LAYOUT,
    case
    WHEN 'flagB' = '%' THEN
    NVL(J.ISS_GRP_DESC,'BILLING')
    WHEN 'flagO' = '%' THEN
    NVL(J.ISS_GRP_DESC,'ORDERING')
    WHEN 'flag' = '%' THEN
    NVL(J.ISS_GRP_DESC,'BILLING/ORDERING')
    else
    NVL(J.ISS_GRP_DESC,' ')
    END ISS_GRP_DESC,
    DECODE(NVL(H.USERID,' ') ,' ','--','&lt;a sbcuid_in=' || H.USERID || ' target=NEW &gt;'||H.FIRSTNAME || ' ' || H.LASTNAME ||
    '( ' || H.USERID || ' )&lt;/a&gt;' ) USER_NAME
    from
    PROFILE_PORTAL B ,
    TBL_BDA_AGENCY_RESP_REP C ,
    TBL_BDA_AGENCY_OFFICE F,
    TBL_BDA_OFFICE G,
    USERS_PORTAL H,
    TBL_BDA_USR_ISS_GRP I ,
    TBL_BDA_ISS_GROUP J,
    ATTRIBUTE_VALUES_PORTAL K,
    PROFILE_TYPE_PORTAL L
    WHERE
    B.PROFILE_ID = F.AGENCY_ID (+)
    AND B.PROFILE_ID = C.AGENCY_ID (+)
    AND G.OFFICE_ID (+)= F.OFFICE_ID
    AND H.USERID (+)= C.RESP_USR_ID
    AND C.ISS_GRP_ID = I.ISS_GRP_ID (+)
    AND I.ISS_GRP_ID = J.ISS_GRP_ID(+)
    AND 'PROFILE.'||B.PROFILE_ID = K.ENTITY_ID(+)
    AND K.ATTRIBUTE_VALUE IS NOT NULL
    AND L.PROFILE_TYPE_ID = B.PROFILE_TYPE_ID
    AND L.APPLICATION_CD='BDA'
    AND NOT EXISTS
    (SELECT agency_id
    FROM TBL_BDA_AGENCY_RESP_REP t
    WHERE t.ISS_GRP_ID IN (1)
    AND t.AGENCY_ID = C.AGENCY_ID)
    AND K.ATTRIBUTE_VALUE LIKE '%'
    AND UPPER(B.PROFILE_NM) LIKE UPPER('%')
    AND (to_char(NVL(B.PROFILE_ID,0))
    LIKE '%'
    OR NVL(B.PROFILE_ID,0) IN (1))
    AND NVL(G.OFFICE_ID,0) IN (1)
    AND (to_char(NVL(C.RESP_USR_ID,'0'))
    LIKE '%'
    OR NVL(C.RESP_USR_ID,'0') IN ('%'))
    ORDER BY PROFILE_NM
    This is the Query and the query takes some mins. to run in prod environment.
    From the Query plan ,I am not able to get any idea for optimization.
    Now,Can you tell me which steps I need to follow to run it faster and which all modifications should be made?
    Thanks.
    Aashish S.

  • Need to tune the hierarchical query

    Hi Guys,
    Can you guys tune in the possible ways...as this is taking 30-40 sec.. No indexes on this table as of now.
    SELECT org_id,
           parent_id,
           organization,
    (SELECT LISTAGG(parent_id, ', ') WITHIN GROUP( ORDER BY org_id)
      FROM organization_master where org_id in(SELECT org_id
         FROM organization_master
         START WITH org_id = a.org_id
         CONNECT BY NOCYCLE prior parent_id = org_id))
          FROM t_org a
          WHERE upper(organization) like upper('%Greater%');
    Thanks in advance!
    Rgds,
    Lrk

    So this is a VIEW with I think 18 tables (I may have missed one or two), some of which are referenced more than one. Some of these tables have tens of miilions of rows. What exactly are you expecting from us?
    I guess this is a data warehouse or BI query. Sometimes such queries just take an age to run and there's nothing which can be done except result caching. Other times the queries can be tuned, but iit requires way more context and domain knowledge than you have provided.
    Please start by reading [url https://forums.oracle.com/forums/thread.jspa?threadID=2174552#9360003]this FAQ. .
    Cheers, APC

  • Needs to tune the query

    Hi ,
    I have a Query that needs to be tuned.
    The query joins two views with some filter condition.
    While running the individual view query with the filter condition i can able to get the results quickly within a seconds.
    But while joining the views conditions of the same criteria which i have used for the individual query takes more than 30 minute.
    i am struggling to tuning this query which was written using the views.
    Note :
    My problem is while checking the explain plan unique sort is taking more cost.
    is that i can reduce the time by giving some optimizer hints to reduce the unique sort cost for query using views?
    Thanks & regards,
    Senthur pandi M

    Hi,
    BluShadow wrote:
    957595 wrote:
    Hi ,
    I have a Query that needs to be tuned.
    The query joins two views with some filter condition.
    While running the individual view query with the filter condition i can able to get the results quickly within a seconds.
    But while joining the views conditions of the same criteria which i have used for the individual query takes more than 30 minute.
    i am struggling to tuning this query which was written using the views.
    Note :
    My problem is while checking the explain plan unique sort is taking more cost.Cost in not necessarily a good comparison to use. The cost is a figure determined on a per-query basis,The problem with cost is that it's a prediction made by the optimizer, rather than the actual measure of query performance. Optimizer often makes mistakes about expected query performance. Ironically, people normally look at query cost when it needs tuning, i.e. when the chance that optimizer made a mistake is especially high.
    In many internet forums one can see claims that cost estimates are meaningless across different queries. Such claims are unfounded. When calculated correctly, cost is quite meaningful, and in such cases there is nothing wrong about comparing cost not only for different queries, but also for different databases (if they have same optimizer settings and system stats).
    is that i can reduce the time by giving some optimizer hints to reduce the unique sort cost for query using views?Hints are not the way to improve performance. That's an overstatement. The sad truth is that in many cases there is no viable alternative to using hints. Rather than always avoid hints no matter what cost, it's better to understand how hints affect optimizer behavior, and when it's safe to use them.
    They are great for identifying where the cause of a performance issue is, but shouldn't be used in production code, as it would be like saying that you know better than Oracle how to retrieve the data, not just now, but in the future as more
    data is added and as data is deleted and replaced with new data etc. By adding hints you are effectively forcing the optimizer to execute the query in a particular way, which may be fast now, but in the future may be worse than what the optimizer can determine itself.Hints that force the optimizer to use a specific access path or a specific join method are dangerous -- because the only lock-in one part of the plan, but not the entire plan (e.g. INDEX hint only ensures that an index is used if possible, but it cannot ensure INDEX UNIQUE/RANGE SCAN, so you may end up in a situation when the optimizer is doing an expensive and meaningless INDEX FULL SCAN because of the hint that was indended to force a different, more selective, access method).
    Hints that don't do that, but rather prevent the optimizer from trying to be smart when it's better to keep things simple, are relatively safe.
    So, use the hints to identify where there are issues in the SQL or in the database design, and fix those issues, rather than leave hints in production code.As a general rule, sure. Here, however, the problem seems to be obvious -- if views are fast separately, and slow when joined, that suggests that the optimizer doesn't merge them correctly.
    Best regards,
    Nikolay

  • Need to tune the below query.

    Query below:
    I have generated the explain plan for the same and its cost is overall 2089...
    But Strange once I have removed the "ORDER SIBLINGS BY RETAILER_NM" from below then its cost is coming overall 40.
    Can U suggest me what is the best solution.
    SELECT path as Retailer_id, logical_physical_flg, parent_retailer_id, upper(retailer_nm), max_level
    FROM (SELECT A.RETAILER_ID,LOGICAL_PHYSICAL_FLG, NULL AS PARENT_RETAILER_ID, B.RETAILER_NM, a.retailer_id path,
    (LEVEL+2) AS MAX_LEVEL FROM
    RETAILER B, USER_RETAILER_MAP A WHERE USER_ID= 'ALEX.CAYLESS@GMACIO' AND
    B.RETAILER_ID=A.RETAILER_ID AND B.STATUS='ACTIVE' AND
    A.RETAILER_ID NOT IN (SELECT DISTINCT RETAILER_ID FROM
    RETAILER_HIERARCHY START WITH PARENT_RETAILER_ID IN (SELECT RETAILER_ID FROM USER_RETAILER_MAP A
    WHERE USER_ID= 'ALEX.CAYLESS@GMACIO' AND MANAGED_BY='Y') CONNECT BY PRIOR RETAILER_ID=PARENT_RETAILER_ID)
    AND MANAGED_BY='Y'
    UNION
    SELECT a.RETAILER_ID, LOGICAL_PHYSICAL_FLG, replace(sys_connect_by_path(decode(level, 1, a.parent_retailer_id), '~'), '~') parent_retailer_id, RETAILER_NM, LPAD(' ', 2*LEVEL-1)||SYS_CONNECT_BY_PATH(B.RETAILER_ID, '/') AS path, LEVEL+3 AS MAX_LEVEL
    FROM RETAILER B, RETAILER_HIERARCHY A
    WHERE B.RETAILER_ID=A.RETAILER_ID AND UPPER(B.STATUS)='ACTIVE' AND EXISTS
    (SELECT RETAILER_ID FROM USER_RETAILER_MAP C WHERE USER_ID = 'ALEX.CAYLESS@GMACIO' AND
    B.RETAILER_ID = C.RETAILER_ID AND MANAGED_BY= 'Y')
    START WITH PARENT_RETAILER_ID IN (SELECT A.RETAILER_ID FROM
    RETAILER B, USER_RETAILER_MAP A WHERE USER_ID= 'ALEX.CAYLESS@GMACIO' AND B.RETAILER_ID=A.RETAILER_ID
    AND UPPER(B.STATUS)='ACTIVE' AND A.RETAILER_ID NOT IN (SELECT DISTINCT RETAILER_ID FROM
    RETAILER_HIERARCHY START WITH PARENT_RETAILER_ID IN (SELECT RETAILER_ID FROM USER_RETAILER_MAP A
    WHERE USER_ID= 'ALEX.CAYLESS@GMACIO' AND MANAGED_BY='Y') CONNECT BY PRIOR RETAILER_ID=PARENT_RETAILER_ID)
    AND MANAGED_BY='Y') CONNECT BY PRIOR A.RETAILER_ID=PARENT_RETAILER_ID )
    START WITH PARENT_RETAILER_ID IS NULL CONNECT BY PRIOR RETAILER_ID = PARENT_RETAILER_ID
    ORDER SIBLINGS BY RETAILER_NM
    Explain Plan:
    ==========================
    PLAN_TABLE_OUTPUT
    | Id | Operation | Name | Rows | Bytes | Cost |
    | 0 | SELECT STATEMENT | | 1352 | 5385K| 2089 |
    |* 1 | CONNECT BY WITH FILTERING | | | | |
    |* 2 | FILTER | | | | |
    | 3 | COUNT | | | | |
    | 4 | VIEW | | 1352 | 5385K| 40 |
    | 5 | SORT UNIQUE | | 1352 | 84128 | 40 |
    | 6 | UNION-ALL | | | | |
    |* 7 | HASH JOIN ANTI | | 16 | 1296 | 12 |
    |* 8 | HASH JOIN | | 19 | 1406 | 9 |
    | 9 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 19 | 570 | 2 |
    |* 10 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 2409 | | 1 |
    |* 11 | TABLE ACCESS FULL | RETAILER | 1594 | 70136 | 6 |
    | 12 | VIEW | VW_NSO_1 | 3 | 21 | 2 |
    |* 13 | CONNECT BY WITH FILTERING | | | | |
    | 14 | NESTED LOOPS | | | | |
    |* 15 | HASH JOIN | | 58 | 2262 | 5 |
    | 16 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 19 | 570 | 2 |
    |* 17 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 19 | | 1 |
    | 18 | INDEX FAST FULL SCAN | AX_RET_HIER | 1336 | 12024 | 2 |
    | 19 | TABLE ACCESS BY USER ROWID | RETAILER_HIERARCHY | | | |
    | 20 | NESTED LOOPS | | | | |
    | 21 | BUFFER SORT | | 3 | 54 | |
    | 22 | CONNECT BY PUMP | | | | |
    |* 23 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 3 | 54 | 2 |
    |* 24 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |* 25 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |* 26 | FILTER | | | | |
    |* 27 | CONNECT BY WITH FILTERING | | | | |
    |* 28 | FILTER | | | | |
    | 29 | COUNT | | | | |
    |* 30 | HASH JOIN | | 1336 | 82832 | 9 |
    | 31 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 1336 | 24048 | 2 |
    | 32 | TABLE ACCESS FULL | RETAILER | 3188 | 136K| 6 |
    | 33 | NESTED LOOPS ANTI | | 1 | 54 | 5 |
    | 34 | NESTED LOOPS | | 1 | 47 | 3 |
    |* 35 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |* 36 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |* 37 | TABLE ACCESS BY INDEX ROWID | RETAILER | 1 | 17 | 1 |
    |* 38 | INDEX UNIQUE SCAN | XPKRETAILER | 100 | | |
    |* 39 | VIEW | VW_NSO_3 | 3 | 21 | |
    |* 40 | CONNECT BY WITH FILTERING | | | | |
    | 41 | NESTED LOOPS | | | | |
    |* 42 | HASH JOIN | | 58 | 2262 | 5 |
    | 43 | TABLE ACCESS BY INDEX ROWID| USER_RETAILER_MAP | 19 | 570 | 2 |
    |* 44 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 19 | | 1 |
    | 45 | INDEX FAST FULL SCAN | AX_RET_HIER | 1336 | 12024 | 2 |
    | 46 | TABLE ACCESS BY USER ROWID | RETAILER_HIERARCHY | | | |
    | 47 | NESTED LOOPS | | | | |
    | 48 | BUFFER SORT | | 3 | 54 | |
    | 49 | CONNECT BY PUMP | | | | |
    |* 50 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 3 | 54 | 2 |
    |* 51 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |* 52 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    | 53 | HASH JOIN | | | | |
    | 54 | CONNECT BY PUMP | | | | |
    | 55 | COUNT | | | | |
    |* 56 | HASH JOIN | | 1336 | 82832 | 9 |
    | 57 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 1336 | 24048 | 2 |
    | 58 | TABLE ACCESS FULL | RETAILER | 3188 | 136K| 6 |
    | 59 | NESTED LOOPS ANTI | | 1 | 54 | 5 |
    | 60 | NESTED LOOPS | | 1 | 47 | 3 |
    |* 61 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |* 62 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |* 63 | TABLE ACCESS BY INDEX ROWID | RETAILER | 1 | 17 | 1 |
    |* 64 | INDEX UNIQUE SCAN | XPKRETAILER | 100 | | |
    |* 65 | VIEW | VW_NSO_3 | 3 | 21 | |
    |* 66 | CONNECT BY WITH FILTERING | | | | |
    | 67 | NESTED LOOPS | | | | |
    |* 68 | HASH JOIN | | 58 | 2262 | 5 |
    | 69 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 19 | 570 | 2 |
    |* 70 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 19 | | 1 |
    | 71 | INDEX FAST FULL SCAN | AX_RET_HIER | 1336 | 12024 | 2 |
    | 72 | TABLE ACCESS BY USER ROWID | RETAILER_HIERARCHY | | | |
    | 73 | NESTED LOOPS | | | | |
    | 74 | BUFFER SORT | | 3 | 54 | |
    | 75 | CONNECT BY PUMP | | | | |
    |* 76 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 3 | 54 | 2 |
    |* 77 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |* 78 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |* 79 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |* 80 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    | 81 | HASH JOIN | | | | |
    | 82 | CONNECT BY PUMP | | | | |
    | 83 | COUNT | | | | |
    | 84 | VIEW | | 1352 | 5385K| 40 |
    | 85 | SORT UNIQUE | | 1352 | 84128 | 40 |
    | 86 | UNION-ALL | | | | |
    |* 87 | HASH JOIN ANTI | | 16 | 1296 | 12 |
    |* 88 | HASH JOIN | | 19 | 1406 | 9 |
    | 89 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 19 | 570 | 2 |
    |* 90 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 2409 | | 1 |
    |* 91 | TABLE ACCESS FULL | RETAILER | 1594 | 70136 | 6 |
    | 92 | VIEW | VW_NSO_1 | 3 | 21 | 2 |
    |* 93 | CONNECT BY WITH FILTERING | | | | |
    | 94 | NESTED LOOPS | | | | |
    |* 95 | HASH JOIN | | 58 | 2262 | 5 |
    | 96 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 19 | 570 | 2 |
    |* 97 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 19 | | 1 |
    | 98 | INDEX FAST FULL SCAN | AX_RET_HIER | 1336 | 12024 | 2 |
    | 99 | TABLE ACCESS BY USER ROWID | RETAILER_HIERARCHY | | | |
    | 100 | NESTED LOOPS | | | | |
    | 101 | BUFFER SORT | | 3 | 54 | |
    | 102 | CONNECT BY PUMP | | | | |
    |*103 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 3 | 54 | 2 |
    |*104 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |*105 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |*106 | FILTER | | | | |
    |*107 | CONNECT BY WITH FILTERING | | | | |
    |*108 | FILTER | | | | |
    | 109 | COUNT | | | | |
    |*110 | HASH JOIN | | 1336 | 82832 | 9 |
    | 111 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 1336 | 24048 | 2 |
    | 112 | TABLE ACCESS FULL | RETAILER | 3188 | 136K| 6 |
    | 113 | NESTED LOOPS ANTI | | 1 | 54 | 5 |
    | 114 | NESTED LOOPS | | 1 | 47 | 3 |
    |*115 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |*116 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |*117 | TABLE ACCESS BY INDEX ROWID | RETAILER | 1 | 17 | 1 |
    |*118 | INDEX UNIQUE SCAN | XPKRETAILER | 100 | | |
    |*119 | VIEW | VW_NSO_3 | 3 | 21 | |
    |*120 | CONNECT BY WITH FILTERING | | | | |
    | 121 | NESTED LOOPS | | | | |
    |*122 | HASH JOIN | | 58 | 2262 | 5 |
    | 123 | TABLE ACCESS BY INDEX ROWID| USER_RETAILER_MAP | 19 | 570 | 2 |
    |*124 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 19 | | 1 |
    | 125 | INDEX FAST FULL SCAN | AX_RET_HIER | 1336 | 12024 | 2 |
    | 126 | TABLE ACCESS BY USER ROWID | RETAILER_HIERARCHY | | | |
    | 127 | NESTED LOOPS | | | | |
    | 128 | BUFFER SORT | | 3 | 54 | |
    | 129 | CONNECT BY PUMP | | | | |
    |*130 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 3 | 54 | 2 |
    |*131 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |*132 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    | 133 | HASH JOIN | | | | |
    | 134 | CONNECT BY PUMP | | | | |
    | 135 | COUNT | | | | |
    |*136 | HASH JOIN | | 1336 | 82832 | 9 |
    | 137 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 1336 | 24048 | 2 |
    | 138 | TABLE ACCESS FULL | RETAILER | 3188 | 136K| 6 |
    | 139 | NESTED LOOPS ANTI | | 1 | 54 | 5 |
    | 140 | NESTED LOOPS | | 1 | 47 | 3 |
    |*141 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |*142 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |*143 | TABLE ACCESS BY INDEX ROWID | RETAILER | 1 | 17 | 1 |
    |*144 | INDEX UNIQUE SCAN | XPKRETAILER | 100 | | |
    |*145 | VIEW | VW_NSO_3 | 3 | 21 | |
    |*146 | CONNECT BY WITH FILTERING | | | | |
    | 147 | NESTED LOOPS | | | | |
    |*148 | HASH JOIN | | 58 | 2262 | 5 |
    | 149 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 19 | 570 | 2 |
    |*150 | INDEX RANGE SCAN | INDX_USERID_MNGBY | 19 | | 1 |
    | 151 | INDEX FAST FULL SCAN | AX_RET_HIER | 1336 | 12024 | 2 |
    | 152 | TABLE ACCESS BY USER ROWID | RETAILER_HIERARCHY | | | |
    | 153 | NESTED LOOPS | | | | |
    | 154 | BUFFER SORT | | 3 | 54 | |
    | 155 | CONNECT BY PUMP | | | | |
    |*156 | INDEX FAST FULL SCAN | XPKRETAILER_HIERARCHY | 3 | 54 | 2 |
    |*157 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |*158 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    |*159 | TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP | 1 | 30 | 2 |
    |*160 | INDEX UNIQUE SCAN | XPKGSS_USER_RETAILER_MAP | 45770 | | 1 |
    Predicate Information (identified by operation id):
    1 - filter("from$_subquery$_001"."PARENT_RETAILER_ID" IS NULL)
    2 - filter("from$_subquery$_001"."PARENT_RETAILER_ID" IS NULL)
    7 - access("A"."RETAILER_ID"="VW_NSO_1"."$nso_col_1")
    8 - access("B"."RETAILER_ID"="A"."RETAILER_ID")
    10 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    11 - filter("B"."STATUS"='ACTIVE')
    13 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES
    S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))
    15 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")
    17 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    23 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)
    24 - filter("A"."MANAGED_BY"='Y')
    25 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    26 - filter(UPPER("SYS_ALIAS_1"."STATUS")='ACTIVE' AND EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILE
    R_MAP" "C" WHERE "C"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "C"."RETAILER_ID"=:B1 AND "C"
    ."MANAGED_BY"='Y'))
    27 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A","RETAILER" "B", (SELECT /*+ */ "
    SYS_ALIAS_1"."RETAILER_ID" "$nso_col_1" FROM "RETAILER_HIERARCHY" "SYS_ALIAS_1" WHERE
    "SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL) "VW_NSO_3" WHERE "A"."RETAILER_ID"="VW_NSO_3"
    ."$nso_col_1" AND "B"."RETAILER_ID"="A"."RETAILER_ID" AND UPPER("B"."STATUS")='ACTIVE'
    AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY
    "='Y'))
    28 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A","RETAILER" "B", (SELECT /*+ */ "
    SYS_ALIAS_1"."RETAILER_ID" "$nso_col_1" FROM "RETAILER_HIERARCHY" "SYS_ALIAS_1" WHERE
    "SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL) "VW_NSO_3" WHERE "A"."RETAILER_ID"="VW_NSO_3"
    ."$nso_col_1" AND "B"."RETAILER_ID"="A"."RETAILER_ID" AND UPPER("B"."STATUS")='ACTIVE'
    AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY
    "='Y'))
    30 - access("SYS_ALIAS_1"."RETAILER_ID"="SYS_ALIAS_2"."RETAILER_ID")
    35 - filter("A"."MANAGED_BY"='Y')
    36 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    37 - filter(UPPER("B"."STATUS")='ACTIVE')
    38 - access("B"."RETAILER_ID"="A"."RETAILER_ID")
    39 - filter("A"."RETAILER_ID"="VW_NSO_3"."$nso_col_1")
    40 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES
    S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))
    42 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")
    44 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    50 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)
    51 - filter("A"."MANAGED_BY"='Y')
    52 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    56 - access("SYS_ALIAS_1"."RETAILER_ID"="SYS_ALIAS_2"."RETAILER_ID")
    61 - filter("A"."MANAGED_BY"='Y')
    62 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    63 - filter(UPPER("B"."STATUS")='ACTIVE')
    64 - access("B"."RETAILER_ID"="A"."RETAILER_ID")
    65 - filter("A"."RETAILER_ID"="VW_NSO_3"."$nso_col_1")
    66 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES
    S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))
    68 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")
    70 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    76 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)
    77 - filter("A"."MANAGED_BY"='Y')
    78 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    79 - filter("C"."MANAGED_BY"='Y')
    80 - access("C"."RETAILER_ID"=:B1 AND "C"."USER_ID"='ALEX.CAYLESS@GMACIO')
    87 - access("A"."RETAILER_ID"="VW_NSO_1"."$nso_col_1")
    88 - access("B"."RETAILER_ID"="A"."RETAILER_ID")
    90 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    91 - filter("B"."STATUS"='ACTIVE')
    93 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES
    S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))
    95 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")
    97 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    103 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)
    104 - filter("A"."MANAGED_BY"='Y')
    105 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    106 - filter(UPPER("SYS_ALIAS_1"."STATUS")='ACTIVE' AND EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILE
    R_MAP" "C" WHERE "C"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "C"."RETAILER_ID"=:B1 AND "C"
    ."MANAGED_BY"='Y'))
    107 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A","RETAILER" "B", (SELECT /*+ */ "
    SYS_ALIAS_1"."RETAILER_ID" "$nso_col_1" FROM "RETAILER_HIERARCHY" "SYS_ALIAS_1" WHERE
    "SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL) "VW_NSO_3" WHERE "A"."RETAILER_ID"="VW_NSO_3"
    ."$nso_col_1" AND "B"."RETAILER_ID"="A"."RETAILER_ID" AND UPPER("B"."STATUS")='ACTIVE'
    AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY
    "='Y'))
    108 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A","RETAILER" "B", (SELECT /*+ */ "
    SYS_ALIAS_1"."RETAILER_ID" "$nso_col_1" FROM "RETAILER_HIERARCHY" "SYS_ALIAS_1" WHERE
    "SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL) "VW_NSO_3" WHERE "A"."RETAILER_ID"="VW_NSO_3"
    ."$nso_col_1" AND "B"."RETAILER_ID"="A"."RETAILER_ID" AND UPPER("B"."STATUS")='ACTIVE'
    AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY
    "='Y'))
    110 - access("SYS_ALIAS_1"."RETAILER_ID"="SYS_ALIAS_2"."RETAILER_ID")
    115 - filter("A"."MANAGED_BY"='Y')
    116 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    117 - filter(UPPER("B"."STATUS")='ACTIVE')
    118 - access("B"."RETAILER_ID"="A"."RETAILER_ID")
    119 - filter("A"."RETAILER_ID"="VW_NSO_3"."$nso_col_1")
    120 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES
    S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))
    122 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")
    124 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    130 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)
    131 - filter("A"."MANAGED_BY"='Y')
    132 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    136 - access("SYS_ALIAS_1"."RETAILER_ID"="SYS_ALIAS_2"."RETAILER_ID")
    141 - filter("A"."MANAGED_BY"='Y')
    142 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    143 - filter(UPPER("B"."STATUS")='ACTIVE')
    144 - access("B"."RETAILER_ID"="A"."RETAILER_ID")
    145 - filter("A"."RETAILER_ID"="VW_NSO_3"."$nso_col_1")
    146 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES
    S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))
    148 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")
    150 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')
    156 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)
    157 - filter("A"."MANAGED_BY"='Y')
    158 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')
    159 - filter("C"."MANAGED_BY"='Y')
    160 - access("C"."RETAILER_ID"=:B1 AND "C"."USER_ID"='ALEX.CAYLESS@GMACIO')
    Edited by: user13345267 on Jul 19, 2010 1:56 AM

    Please find formatted sql.
    SELECT path AS retailer_id,
           logical_physical_flg,
           parent_retailer_id,
           Upper(retailer_nm),
           max_level
    FROM   (SELECT a.retailer_id,
                   logical_physical_flg,
                   NULL          AS parent_retailer_id,
                   b.retailer_nm,
                   a.retailer_id path,
                   ( LEVEL + 2 ) AS max_level
            FROM   retailer b,
                   user_retailer_map a
            WHERE  user_id = 'ALEX.CAYLESS@GMACIO'
                   AND b.retailer_id = a.retailer_id
                   AND b.status = 'ACTIVE'
                   AND a.retailer_id NOT IN (SELECT DISTINCT retailer_id
                                             FROM   retailer_hierarchy
                                             START WITH parent_retailer_id IN (
                                                        SELECT
                                                        retailer_id
                                                                               FROM
                                                        user_retailer_map a
                                                                               WHERE
                                             user_id = 'ALEX.CAYLESS@GMACIO'
                                             AND managed_by = 'Y')
                                             CONNECT BY PRIOR
                                             retailer_id = parent_retailer_id)
                   AND managed_by = 'Y'
            UNION
            SELECT a.retailer_id,
                   logical_physical_flg,
                   Replace(Sys_connect_by_path(
                           Decode(LEVEL, 1, a.parent_retailer_id), '~')
                   '~')
                                                             parent_retailer_id,
                   retailer_nm,
                   Lpad(' ', 2 * LEVEL - 1)
                   ||Sys_connect_by_path(b.retailer_id, '/') AS path,
                   LEVEL + 3                                 AS max_level
            FROM   retailer b,
                   retailer_hierarchy a
            WHERE  b.retailer_id = a.retailer_id
                   AND Upper(b.status) = 'ACTIVE'
                   AND EXISTS (SELECT retailer_id
                               FROM   user_retailer_map c
                               WHERE  user_id = 'ALEX.CAYLESS@GMACIO'
                                      AND b.retailer_id = c.retailer_id
                                      AND managed_by = 'Y')
            START WITH parent_retailer_id IN (SELECT a.retailer_id
                                              FROM   retailer b,
                                                     user_retailer_map a
                                              WHERE  user_id = 'ALEX.CAYLESS@GMACIO'
                                                     AND
                                             b.retailer_id = a.retailer_id
                                                     AND Upper(b.status) = 'ACTIVE'
                                                     AND a.retailer_id NOT IN
                                                         (SELECT DISTINCT
                                                         retailer_id
                                                          FROM   retailer_hierarchy
                                             START WITH parent_retailer_id IN
                                                        SELECT
                                                        retailer_id
                                                        FROM
                                                        user_retailer_map a
                                                        WHERE
                                             user_id = 'ALEX.CAYLESS@GMACIO'
                                             AND managed_by = 'Y')
                                             CONNECT BY PRIOR
                                             retailer_id = parent_retailer_id)
                                                     AND managed_by = 'Y')
            CONNECT BY PRIOR a.retailer_id = parent_retailer_id)
    START WITH parent_retailer_id IS NULL
    CONNECT BY PRIOR retailer_id = parent_retailer_id
    ORDER SIBLINGS BY RETAILER_NM
    Execution Plan
    ====================================
    PLAN_TABLE_OUTPUT                                                                                                                  
    | Id  | Operation                                 |  Name                     | Rows  | Bytes | Cost  |                            
    |   0 | SELECT STATEMENT                          |                           |  1352 |  5385K|  2089 |                            
    |*  1 |  CONNECT BY WITH FILTERING                |                           |       |       |       |                            
    |*  2 |   FILTER                                  |                           |       |       |       |                            
    |   3 |    COUNT                                  |                           |       |       |       |                            
    |   4 |     VIEW                                  |                           |  1352 |  5385K|    40 |                            
    |   5 |      SORT UNIQUE                          |                           |  1352 | 84128 |    40 |                            
    |   6 |       UNION-ALL                           |                           |       |       |       |                            
    |*  7 |        HASH JOIN ANTI                     |                           |    16 |  1296 |    12 |                            
    |*  8 |         HASH JOIN                         |                           |    19 |  1406 |     9 |                            
    |   9 |          TABLE ACCESS BY INDEX ROWID      | USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |* 10 |           INDEX RANGE SCAN                | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    |* 11 |          TABLE ACCESS FULL                | RETAILER                  |    32 |  1408 |     6 |                            
    |  12 |         VIEW                              | VW_NSO_1                  |     3 |    21 |     2 |                            
    |* 13 |          CONNECT BY WITH FILTERING        |                           |       |       |       |                            
    |  14 |           NESTED LOOPS                    |                           |       |       |       |                            
    |* 15 |            HASH JOIN                      |                           |    58 |  2262 |     5 |                            
    |  16 |             TABLE ACCESS BY INDEX ROWID   | USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |* 17 |              INDEX RANGE SCAN             | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    |  18 |             INDEX FAST FULL SCAN          | AX_RET_HIER               |  1336 | 12024 |     2 |                            
    |  19 |            TABLE ACCESS BY USER ROWID     | RETAILER_HIERARCHY        |       |       |       |                            
    |  20 |           NESTED LOOPS                    |                           |       |       |       |                            
    |  21 |            BUFFER SORT                    |                           |     3 |    54 |       |                            
    |  22 |             CONNECT BY PUMP               |                           |       |       |       |                            
    |* 23 |            INDEX FAST FULL SCAN           | XPKRETAILER_HIERARCHY     |     3 |    54 |     2 |                            
    |* 24 |           TABLE ACCESS BY INDEX ROWID     | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |* 25 |            INDEX UNIQUE SCAN              | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |* 26 |        FILTER                             |                           |       |       |       |                            
    |* 27 |         CONNECT BY WITH FILTERING         |                           |       |       |       |                            
    |* 28 |          FILTER                           |                           |       |       |       |                            
    |  29 |           COUNT                           |                           |       |       |       |                            
    |* 30 |            HASH JOIN                      |                           |  1336 | 82832 |     9 |                            
    |  31 |             INDEX FAST FULL SCAN          | XPKRETAILER_HIERARCHY     |  1336 | 24048 |     2 |                            
    |  32 |             TABLE ACCESS FULL             | RETAILER                  |  3188 |   136K|     6 |                            
    |  33 |           NESTED LOOPS ANTI               |                           |     1 |    54 |     5 |                            
    |  34 |            NESTED LOOPS                   |                           |     1 |    47 |     3 |                            
    |* 35 |             TABLE ACCESS BY INDEX ROWID   | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |* 36 |              INDEX UNIQUE SCAN            | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |* 37 |             TABLE ACCESS BY INDEX ROWID   | RETAILER                  |     1 |    17 |     1 |                            
    |* 38 |              INDEX UNIQUE SCAN            | XPKRETAILER               |   100 |       |       |                            
    |* 39 |            VIEW                           | VW_NSO_3                  |     3 |    21 |       |                            
    |* 40 |             CONNECT BY WITH FILTERING     |                           |       |       |       |                            
    |  41 |              NESTED LOOPS                 |                           |       |       |       |                            
    |* 42 |               HASH JOIN                   |                           |    58 |  2262 |     5 |                            
    |  43 |                TABLE ACCESS BY INDEX ROWID| USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |* 44 |                 INDEX RANGE SCAN          | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    |  45 |                INDEX FAST FULL SCAN       | AX_RET_HIER               |  1336 | 12024 |     2 |                            
    |  46 |               TABLE ACCESS BY USER ROWID  | RETAILER_HIERARCHY        |       |       |       |                            
    |  47 |              NESTED LOOPS                 |                           |       |       |       |                            
    |  48 |               BUFFER SORT                 |                           |     3 |    54 |       |                            
    |  49 |                CONNECT BY PUMP            |                           |       |       |       |                            
    |* 50 |               INDEX FAST FULL SCAN        | XPKRETAILER_HIERARCHY     |     3 |    54 |     2 |                            
    |* 51 |              TABLE ACCESS BY INDEX ROWID  | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |* 52 |               INDEX UNIQUE SCAN           | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |  53 |          HASH JOIN                        |                           |       |       |       |                            
    |  54 |           CONNECT BY PUMP                 |                           |       |       |       |                            
    |  55 |           COUNT                           |                           |       |       |       |                            
    |* 56 |            HASH JOIN                      |                           |  1336 | 82832 |     9 |                            
    |  57 |             INDEX FAST FULL SCAN          | XPKRETAILER_HIERARCHY     |  1336 | 24048 |     2 |                            
    |  58 |             TABLE ACCESS FULL             | RETAILER                  |  3188 |   136K|     6 |                            
    |  59 |          NESTED LOOPS ANTI                |                           |     1 |    54 |     5 |                            
    |  60 |           NESTED LOOPS                    |                           |     1 |    47 |     3 |                            
    |* 61 |            TABLE ACCESS BY INDEX ROWID    | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |* 62 |             INDEX UNIQUE SCAN             | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |* 63 |            TABLE ACCESS BY INDEX ROWID    | RETAILER                  |     1 |    17 |     1 |                            
    |* 64 |             INDEX UNIQUE SCAN             | XPKRETAILER               |   100 |       |       |                            
    |* 65 |           VIEW                            | VW_NSO_3                  |     3 |    21 |       |                            
    |* 66 |            CONNECT BY WITH FILTERING      |                           |       |       |       |                            
    |  67 |             NESTED LOOPS                  |                           |       |       |       |                            
    |* 68 |              HASH JOIN                    |                           |    58 |  2262 |     5 |                            
    |  69 |               TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |* 70 |                INDEX RANGE SCAN           | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    |  71 |               INDEX FAST FULL SCAN        | AX_RET_HIER               |  1336 | 12024 |     2 |                            
    |  72 |              TABLE ACCESS BY USER ROWID   | RETAILER_HIERARCHY        |       |       |       |                            
    |  73 |             NESTED LOOPS                  |                           |       |       |       |                            
    |  74 |              BUFFER SORT                  |                           |     3 |    54 |       |                            
    |  75 |               CONNECT BY PUMP             |                           |       |       |       |                            
    |* 76 |              INDEX FAST FULL SCAN         | XPKRETAILER_HIERARCHY     |     3 |    54 |     2 |                            
    |* 77 |             TABLE ACCESS BY INDEX ROWID   | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |* 78 |              INDEX UNIQUE SCAN            | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |* 79 |         TABLE ACCESS BY INDEX ROWID       | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |* 80 |          INDEX UNIQUE SCAN                | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |  81 |   HASH JOIN                               |                           |       |       |       |                            
    |  82 |    CONNECT BY PUMP                        |                           |       |       |       |                            
    |  83 |    COUNT                                  |                           |       |       |       |                            
    |  84 |     VIEW                                  |                           |  1352 |  5385K|    40 |                            
    |  85 |      SORT UNIQUE                          |                           |  1352 | 84128 |    40 |                            
    |  86 |       UNION-ALL                           |                           |       |       |       |                            
    |* 87 |        HASH JOIN ANTI                     |                           |    16 |  1296 |    12 |                            
    |* 88 |         HASH JOIN                         |                           |    19 |  1406 |     9 |                            
    |  89 |          TABLE ACCESS BY INDEX ROWID      | USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |* 90 |           INDEX RANGE SCAN                | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    |* 91 |          TABLE ACCESS FULL                | RETAILER                  |    32 |  1408 |     6 |                            
    |  92 |         VIEW                              | VW_NSO_1                  |     3 |    21 |     2 |                            
    |* 93 |          CONNECT BY WITH FILTERING        |                           |       |       |       |                            
    |  94 |           NESTED LOOPS                    |                           |       |       |       |                            
    |* 95 |            HASH JOIN                      |                           |    58 |  2262 |     5 |                            
    |  96 |             TABLE ACCESS BY INDEX ROWID   | USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |* 97 |              INDEX RANGE SCAN             | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    |  98 |             INDEX FAST FULL SCAN          | AX_RET_HIER               |  1336 | 12024 |     2 |                            
    |  99 |            TABLE ACCESS BY USER ROWID     | RETAILER_HIERARCHY        |       |       |       |                            
    | 100 |           NESTED LOOPS                    |                           |       |       |       |                            
    | 101 |            BUFFER SORT                    |                           |     3 |    54 |       |                            
    | 102 |             CONNECT BY PUMP               |                           |       |       |       |                            
    |*103 |            INDEX FAST FULL SCAN           | XPKRETAILER_HIERARCHY     |     3 |    54 |     2 |                            
    |*104 |           TABLE ACCESS BY INDEX ROWID     | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |*105 |            INDEX UNIQUE SCAN              | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |*106 |        FILTER                             |                           |       |       |       |                            
    |*107 |         CONNECT BY WITH FILTERING         |                           |       |       |       |                            
    |*108 |          FILTER                           |                           |       |       |       |                            
    | 109 |           COUNT                           |                           |       |       |       |                            
    |*110 |            HASH JOIN                      |                           |  1336 | 82832 |     9 |                            
    | 111 |             INDEX FAST FULL SCAN          | XPKRETAILER_HIERARCHY     |  1336 | 24048 |     2 |                            
    | 112 |             TABLE ACCESS FULL             | RETAILER                  |  3188 |   136K|     6 |                            
    | 113 |           NESTED LOOPS ANTI               |                           |     1 |    54 |     5 |                            
    | 114 |            NESTED LOOPS                   |                           |     1 |    47 |     3 |                            
    |*115 |             TABLE ACCESS BY INDEX ROWID   | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |*116 |              INDEX UNIQUE SCAN            | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |*117 |             TABLE ACCESS BY INDEX ROWID   | RETAILER                  |     1 |    17 |     1 |                            
    |*118 |              INDEX UNIQUE SCAN            | XPKRETAILER               |   100 |       |       |                            
    |*119 |            VIEW                           | VW_NSO_3                  |     3 |    21 |       |                            
    |*120 |             CONNECT BY WITH FILTERING     |                           |       |       |       |                            
    | 121 |              NESTED LOOPS                 |                           |       |       |       |                            
    |*122 |               HASH JOIN                   |                           |    58 |  2262 |     5 |                            
    | 123 |                TABLE ACCESS BY INDEX ROWID| USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |*124 |                 INDEX RANGE SCAN          | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    | 125 |                INDEX FAST FULL SCAN       | AX_RET_HIER               |  1336 | 12024 |     2 |                            
    | 126 |               TABLE ACCESS BY USER ROWID  | RETAILER_HIERARCHY        |       |       |       |                            
    | 127 |              NESTED LOOPS                 |                           |       |       |       |                            
    | 128 |               BUFFER SORT                 |                           |     3 |    54 |       |                            
    | 129 |                CONNECT BY PUMP            |                           |       |       |       |                            
    |*130 |               INDEX FAST FULL SCAN        | XPKRETAILER_HIERARCHY     |     3 |    54 |     2 |                            
    |*131 |              TABLE ACCESS BY INDEX ROWID  | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |*132 |               INDEX UNIQUE SCAN           | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    | 133 |          HASH JOIN                        |                           |       |       |       |                            
    | 134 |           CONNECT BY PUMP                 |                           |       |       |       |                            
    | 135 |           COUNT                           |                           |       |       |       |                            
    |*136 |            HASH JOIN                      |                           |  1336 | 82832 |     9 |                            
    | 137 |             INDEX FAST FULL SCAN          | XPKRETAILER_HIERARCHY     |  1336 | 24048 |     2 |                            
    | 138 |             TABLE ACCESS FULL             | RETAILER                  |  3188 |   136K|     6 |                            
    | 139 |          NESTED LOOPS ANTI                |                           |     1 |    54 |     5 |                            
    | 140 |           NESTED LOOPS                    |                           |     1 |    47 |     3 |                            
    |*141 |            TABLE ACCESS BY INDEX ROWID    | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |*142 |             INDEX UNIQUE SCAN             | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |*143 |            TABLE ACCESS BY INDEX ROWID    | RETAILER                  |     1 |    17 |     1 |                            
    |*144 |             INDEX UNIQUE SCAN             | XPKRETAILER               |   100 |       |       |                            
    |*145 |           VIEW                            | VW_NSO_3                  |     3 |    21 |       |                            
    |*146 |            CONNECT BY WITH FILTERING      |                           |       |       |       |                            
    | 147 |             NESTED LOOPS                  |                           |       |       |       |                            
    |*148 |              HASH JOIN                    |                           |    58 |  2262 |     5 |                            
    | 149 |               TABLE ACCESS BY INDEX ROWID | USER_RETAILER_MAP         |    19 |   570 |     2 |                            
    |*150 |                INDEX RANGE SCAN           | INDX_USERID_MNGBY         |    19 |       |     1 |                            
    | 151 |               INDEX FAST FULL SCAN        | AX_RET_HIER               |  1336 | 12024 |     2 |                            
    | 152 |              TABLE ACCESS BY USER ROWID   | RETAILER_HIERARCHY        |       |       |       |                            
    | 153 |             NESTED LOOPS                  |                           |       |       |       |                            
    | 154 |              BUFFER SORT                  |                           |     3 |    54 |       |                            
    | 155 |               CONNECT BY PUMP             |                           |       |       |       |                            
    |*156 |              INDEX FAST FULL SCAN         | XPKRETAILER_HIERARCHY     |     3 |    54 |     2 |                            
    |*157 |             TABLE ACCESS BY INDEX ROWID   | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |*158 |              INDEX UNIQUE SCAN            | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    |*159 |         TABLE ACCESS BY INDEX ROWID       | USER_RETAILER_MAP         |     1 |    30 |     2 |                            
    |*160 |          INDEX UNIQUE SCAN                | XPKGSS_USER_RETAILER_MAP  | 45770 |       |     1 |                            
    Predicate Information (identified by operation id):                                                                                
       1 - filter("from$_subquery$_001"."PARENT_RETAILER_ID" IS NULL)                                                                  
       2 - filter("from$_subquery$_001"."PARENT_RETAILER_ID" IS NULL)                                                                  
       7 - access("A"."RETAILER_ID"="VW_NSO_1"."$nso_col_1")                                                                           
       8 - access("B"."RETAILER_ID"="A"."RETAILER_ID")                                                                                 
      10 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')                                                        
      11 - filter("B"."STATUS"='ACTIVE')                                                                                               
      13 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A" WHERE "A"."USER_ID"='ALEX.CAYLES                               
                  S@GMACIO' AND "A"."RETAILER_ID"=:B1 AND "A"."MANAGED_BY"='Y'))                                                       
      15 - access("RETAILER_HIERARCHY"."PARENT_RETAILER_ID"="A"."RETAILER_ID")                                                         
      17 - access("A"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "A"."MANAGED_BY"='Y')                                                        
      23 - filter("SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL)                                                                             
      24 - filter("A"."MANAGED_BY"='Y')                                                                                                
      25 - access("A"."RETAILER_ID"=:B1 AND "A"."USER_ID"='ALEX.CAYLESS@GMACIO')                                                       
      26 - filter(UPPER("SYS_ALIAS_1"."STATUS")='ACTIVE' AND  EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILE                               
                  R_MAP" "C" WHERE "C"."USER_ID"='ALEX.CAYLESS@GMACIO' AND "C"."RETAILER_ID"=:B1 AND "C"                               
                  ."MANAGED_BY"='Y'))                                                                                                  
      27 - filter( EXISTS (SELECT /*+ */ 0 FROM "USER_RETAILER_MAP" "A","RETAILER" "B", (SELECT /*+ */ "                               
                  SYS_ALIAS_1"."RETAILER_ID" "$nso_col_1" FROM "RETAILER_HIERARCHY" "SYS_ALIAS_1" WHERE                                
                  "SYS_ALIAS_1"."PARENT_RETAILER_ID"=NULL) "VW_NSO_3" WHERE "A"."RETAILER_ID"="VW_NSO_3"                               
                  ."$nso_col_1" AND "B"."RETAILER_ID"="A"."RETAILER_ID" AND UPPER("B"."STATUS")='ACTIVE'                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 

  • Guide me to tune the query

    Hi All,
    I need to tune the query which is taking more than 1 hour to execute over 8 Lakhs of record.
    SQL> explain plan for SELECT C.aci_cust_code      cust_code,
    2 C.aci_cust_name cust_name,
    3      R.NAME ruledefination,
    4 B.RULECODE ALERTS,
    5 A.custom1 tran_id,
    6 TD_get_value('AMLTRANTYPE', RTRIM(A.custom17)) trantype,
    7 A.CUSTOM18 tran_nature,
    8 A.custom25 tran_date,
    9 A.messageno messageno,
    10 TD_get_value('AMLTRANSTATUS', A.status) msgstatus,
    11 D.acai_acct_type acct_type,
    12 A.custom19 acct_number,
    13 A.CURRENCY CURRENCY,
    14 A.priorityamount amount,
    15 A.operator USERNAME,
    16 A.msgdb_id msgdb_id,
    17 A.msg_mode_in msg_mode_in
    18 FROM MSGDB A,
    19 MSGALERTS B,
    20 AML_CUST_INFO C,
    21      AML_CUST_ACC_INFO D,
    22 RULETBL2 R,
    23           (SELECT tdkey FROM tabledetails WHERE tdidcode = 'AML-INCLUDEQ' ) amlqueues
    24 WHERE A.msgdb_id = B.msgdb_id AND
    25 A.queueid = amlqueues.tdkey AND
    26           A.MSG_MODE_IN = 'AML-TRANS' AND
    27 A.custom15 = C.aci_cust_code AND
    28 A.CUSTOM19=D.ACAI_ACCT_NUMBER(+) AND
    29 TO_CHAR(A.custom25,'YYYYMMDD') BETWEEN
    30      TO_CHAR(TO_DATE('2011/01/01','YYYY/MM/DD'),'YYYYMMDD')
    31 AND TO_CHAR(TO_DATE('2011/01/31','YYYY/MM/DD'),'YYYYMMDD')
    32 AND B.RULECODE = R.RULECODE
    33 ORDER BY A.custom25, msgdb_id,B.rulecode;
    Explained.
    PLAN_TABLE_OUTPUT
    Plan hash value: 1081661146
    | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | 173K| 30M| | 12697 (2)| 00:02:33 |
    | 1 | SORT ORDER BY | | 173K| 30M| 66M| 12697 (2)| 00:02:33 |
    |* 2 | HASH JOIN | | 173K| 30M| | 5580 (4)| 00:01:07 |
    | 3 | VIEW | index$_join$_005 | 3395 | 81480 | | 42 (3)| 00:00:01 |
    |* 4 | HASH JOIN | | | | | | |
    | 5 | INDEX FAST FULL SCAN | IDX_RCODE | 3395 | 81480 | | 10 (0)| 00:00:01 |
    | 6 | INDEX FAST FULL SCAN | SYS_C0040836 | 3395 | 81480 | | 31 (0)| 00:00:01 |
    |* 7 | HASH JOIN | | 1737 | 276K| | 5534 (4)| 00:01:07 |
    |* 8 | HASH JOIN | | 559 | 86645 | | 4575 (3)| 00:00:55 |
    |* 9 | HASH JOIN OUTER | | 448 | 56000 | | 4463 (3)| 00:00:54 |
    | 10 | NESTED LOOPS | | 448 | 47040 | | 4404 (3)| 00:00:53 |
    |* 11 | TABLE ACCESS BY INDEX ROWID| MSGDB | 451 | 35178 | | 4403 (3)| 00:00:53 |
    |* 12 | INDEX RANGE SCAN | I_MODEDATE | 2292 | | | 4323 (3)| 00:00:52 |
    |* 13 | INDEX UNIQUE SCAN | PK_TABLEDETAIL | 1 | 27 | | 0 (0)| 00:00:01 |
    | 14 | INDEX FAST FULL SCAN | ACC_NUMBER_TYPE | 58947 | 1151K| | 58 (4)| 00:00:01 |
    | 15 | TABLE ACCESS FULL | AML_CUST_INFO | 18340 | 537K| | 111 (1)| 00:00:02 |
    | 16 | TABLE ACCESS FULL | MSGALERTS | 868K| 6782K| | 944 (4)| 00:00:12 |
    There is no index on RULECODE of MSGALERTS and RULETBL2 table.
    Could yu guys guide me how to tune this query with or without creating any new index.
    Thanks,

    To emphasise what hoek has said regarding dates, NEVER compare dates with dates by converting them to strings (or numbers). By doing so, you remove vital information from the optimizer.
    For example, what is the difference between "31st Dec 2010" and "1st Jan 2011"? Easy, they're dates, that's 1 day.
    But what's the difference between "20101231" and "20110101"? Easy: 20110101 - 20101231 = 8870.
    That makes the difference between the optimizer guessing 1 row or 8870 rows... a fairly big difference, I think you'll agree, which could well impact on the plan the optimizer chooses.
    One other point - leaving the clause as dates gives:
    AND    a.custom25 BETWEEN TO_DATE('2011/01/01', 'YYYY/MM/DD')
                          AND TO_DATE('2011/01/31', 'YYYY/MM/DD') which excludes any dates on 31st Jan 2011 except midnight, eg. 10am on 31st Jan 2011 won't be returned by your query.
    If you're after rows for a given month, then you could do:
    AND    trunc(a.custom25, 'mm') = TO_DATE('01/01/2011', 'dd/mm/yyyy')

  • HT3775 I NEED I TUNES FOR A 64 BIT PC. OPERATING SYSTEM IS WINDOWS 8, NON TOUCH SCREEN. WHICH IS THE ABSOLUTELY BEST WAY TO GET ITUNES OPERATING CORRECTLY ON MY PC????//I HAVE TRIED SEVERAL THINGS, NONE OF WHICH ARE WORKING. IS ITUNES DELIBERATELY EXCLUDI

    I cannot get itunes to work/install on myPC. I am running windows 8 in a 64 bit machine. I also want to purchase books via itunes for my Nook. Are you deliberately excluding PC owners so we cannot use ituens on our computers???? I have selected a community but have no idea what community I should be working with. Can somone explai these communities to me? Also. you don't allow much time to go thru the sign up process. I had to start over SEVERAL times as you kept timing me out. Jesus...when people are signing up for the first time, we have no idea of the questions that will be asked. Give us a break and give us time to sign up. Not everone is disability free and able to go thru your process quickly...you are NOT user friendly. You should be for people who are wanting to join your community. I used to want an Apple product but now that  I have had first hand experience with your web page, I think I will probably stay away from Apple products. VERY DISAPPOINTING

    Jan 11, 2014 10:26 AM  Re: I NEED I TUNES FOR A 64 BIT PC. OPERATING SYSTEM IS WINDOWS 8, NON TOUCH SCREEN. WHICH IS THE ABSOLUTELY BEST WAY TO GET ITUNES OPERATING CORRECTLY ON MY PC????//I HAVE TRIED SEVERAL THINGS, NONE OF WHICH ARE WORKING. IS ITUNES DELIBERATELY EXCLUDING
      Re: I NEED I TUNES FOR A 64 BIT PC. OPERATING SYSTEM IS WINDOWS 8, NON TOUCH SCREEN. WHICH IS THE ABSOLUTELY BEST WAY TO GET ITUNES OPERATING CORRECTLY ON MY PC????//I HAVE TRIED SEVERAL THINGS, NONE OF WHICH ARE WORKING. IS ITUNES DELIBERATELY EXCLUDING PC'S  in response to Birdlover1      
    Post over in the iTunes for Windows forum, here:
    https://discussions.apple.com/community/itunes/itunes_for_windows
    sebastian

  • Im trying to download the newest version of i tunes because i just got the i phone 5c..it wont download because i have to have i tunes 10.6.8 but it wont letme download that either because i need i tunes 10.6 to get it and i cant find that download..what

    I'm trying to download the newest version of I tunes because I just got the I phone 5c..it wont download because I have to have I tunes 10.6.8 but it wont let me download that either because I need I tunes 10.6 to get it and I can't find that download anywhere..I need to get the book for school on my I pad or phone by tomorrow...what do I do?

    Welcome to Apple Support Communities
    The iPhone 5c needs iTunes 11.1, which requires Mac OS X 10.6.8. See if your Mac can be upgraded to Mac OS X Snow Leopard > http://support.apple.com/kb/sp575 If so, buy Mac OS X Snow Leopard > http://store.apple.com/us/product/MC573Z/A/mac-os-x-106-snow-leopard
    Then, make a backup of your data with Time Machine or Disk Utility's Restore, insert the disc and follow its steps to upgrade to Mac OS X Snow Leopard. You shouldn't lose compatibility with any application. After upgrading, open  > Software Update, and install the latest version. It will install iTunes 11.1, so you will be able to sync the iPhone 5c with your Mac

  • Can match identify my vinyl imported albums in I tunes. Also for it to work will I need to load all the album details. Obviously the iTunes Store needs to have the albums on line

    Can match identify my vinyl imported albums in I tunes. Also for it to work will I need to load all the album details. Obviously the iTunes Store needs to have the albums on line

    Yes.  Matching Songs in Vinyl Albums is possible, usually though with a success rate of 20 - 40%.
    Even with great care taken to improve the quality of the recording, the outcome is mixed.
    Summary points are here: https://discussions.apple.com/thread/3696878

  • I have itunes folder on Sony Vaio that has died. It has home sharing enabled.I need to transfer the library onto this new computer.I have i cloud but want the muin folder transferred to this computer. I have part of my i tunes folder on 2 back up drives.

    I have itunes folder on Sony Vaio that is seriously unwell. I can start up in safe mode but that's all.  It has home sharing enabled.I need to transfer the library onto this new computer before it completely gives up the ghost.I have i cloud but want the main folder transferred to this computer. I have part of my i tunes folder on 2 back up drives.
    Can anyone help please

    If the computer only starts in safte mode, it is highly unlikely that network functionality works.
    Copy or move the ENTIRE iTunes folder (and any other personal data you want) to an external drive.

  • Tune the SQL Query need a Suggestion

    Hi,
    There is a view created which takes 17seconds to execute the query, When i split the query and execute each query takes .15 seconds to execute. Below it the query which i need to improve the performance of the code please need your suggestion in order to tweek so that time take for execution become less
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_1 "Product Name",
    TRIM (UPPER (serial_number_1)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_1 != 'NULL'
    AND Serial_Number_1 != 'NULL'
    AND C.Amid = A.Amid(+)
    UNION
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_2 "Product Name",
    TRIM (UPPER (serial_number_2)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_2 != 'NULL'
    AND serial_number_2 != 'NULL'
    AND C.Amid = A.Amid(+)
    UNION
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_3 "Product Name",
    TRIM (UPPER (serial_number_3)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_3 != 'NULL'
    AND serial_number_3 != 'NULL'
    AND C.Amid = A.Amid(+)
    UNION
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_4 "Product Name",
    TRIM (UPPER (serial_number_4)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_4 != 'NULL'
    AND serial_number_4 != 'NULL'
    AND C.Amid = A.Amid(+)
    UNION
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_5 "Product Name",
    TRIM (UPPER (serial_number_5)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_5 != 'NULL'
    AND serial_number_5 != 'NULL'
    AND C.Amid = A.Amid(+)
    UNION
    SELECT 'ERP' "Source",
    Imv.Bill_To "Distibutor",
    Imv.Ship_To "Reseller",
    Ship_To_City "Reseller City",
    Ship_To_State "Reseller State",
    Edb2_Global.Country_Name_Theater(Imv.Ship_To_Country ,'COUNTRY') "Reseller Country",
    Edb2_Global.Country_Name_Theater(Imv.Ship_To_Country ,'THEATER') "Reseller Theater",
    Cl.Company_Name "Customer Name",
    Cl.City "Customer City",
    Cl.State "Customer State",
    Edb2_Global.Country_Name_Theater(Cl.Country,'COUNTRY') "Customer Country",
    Edb2_Global.Country_Name_Theater(Cl.Country,'THEATER') "Customer Theater",
    Imv.So_Booked_Date "Sales Book Date",
    Imv.Ship_Date "Ship Date",
    Imv.Order_Number "Sales Order Number",
    Imv.Cust_Po_Number "PO Number",
    Cp.Item_Name "Product Name",
    Cp.Product_Serial_Number "Product Serial Number",
    TO_CHAR(Imv.contract_number)"Contract ID",
    Imv.Service_Description "Support Name",
    Imv.Service_Start_Date "Start Date",
    Imv.Service_End_Date "Expire Date",
    Imv.Header_Status "Header Status",
    Imv.Line_Status "Line Status",
    Imv.Line_Type "Line Type",
    Imv.Termination_Reason "Termination Reason",
    Cl.Location_Id "Location_id",
    cp.id "Product_id"
    FROM ib_support_contracts_mv imv,
    customer_products cp,
    customer_locations cl
    WHERE Upper (Trim (Imv.Serial_Number)) = Upper (Trim (Cp.Product_Serial_Number(+)))
    AND Cp.Location_Id = Cl.Location_Id(+)
    There is a union for each and every query, Please suggest how to tweek
    Thanks
    Sudhir

    Try
    select distinct a.*
    from (SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_1 "Product Name",
    TRIM (UPPER (serial_number_1)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_1 != 'NULL'
    AND Serial_Number_1 != 'NULL'
    AND C.Amid = A.Amid(+)
    union all
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_2 "Product Name",
    TRIM (UPPER (serial_number_2)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_2 != 'NULL'
    AND serial_number_2 != 'NULL'
    AND C.Amid = A.Amid(+)
    union all
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_3 "Product Name",
    TRIM (UPPER (serial_number_3)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_3 != 'NULL'
    AND serial_number_3 != 'NULL'
    AND C.Amid = A.Amid(+)
    union all
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_4 "Product Name",
    TRIM (UPPER (serial_number_4)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_4 != 'NULL'
    AND serial_number_4 != 'NULL'
    AND C.Amid = A.Amid(+)
    union all
    SELECT 'Parature' "Source",
    NULL "Distibutor",
    reseller_name "Reseller",
    NULL "Reseller City",
    NULL "Reseller State",
    A.Country "Reseller Country",
    DECODE (a.state, 'APAC', 'APAC', 'EMEA', 'EMEA', NULL, 'Unknown', 'US' ) "Reseller Theater",
    NULL "Customer Name",
    NULL "Customer City",
    NULL "Customer State",
    NULL "Customer Country",
    NULL "Customer Theater",
    NULL "Sales Book Date",
    NULL "Ship Date",
    c.sales_order_number "Sales Order Number",
    C.Po_Number "PO Number",
    controller_model_number_5 "Product Name",
    TRIM (UPPER (serial_number_5)) "Product Serial Number",
    c.contract_id "Contract ID",
    product_name "Support Name",
    TO_DATE (c.contract_purchase_date) "Start Date",
    TO_DATE (c.contract_expiration_date) "Expire Date",
    NULL "Header Status",
    NULL "Line Status",
    NULL "Line Type",
    NULL "Termination Reason",
    NULL "Location_id",
    NULL "Product_id"
    FROM edb_assets c,
    edb_accounts a
    WHERE controller_model_number_5 != 'NULL'
    AND serial_number_5 != 'NULL'
    AND C.Amid = A.Amid(+)
    union all
    SELECT 'ERP' "Source",
    Imv.Bill_To "Distibutor",
    Imv.Ship_To "Reseller",
    Ship_To_City "Reseller City",
    Ship_To_State "Reseller State",
    Edb2_Global.Country_Name_Theater(Imv.Ship_To_Country ,'COUNTRY') "Reseller Country",
    Edb2_Global.Country_Name_Theater(Imv.Ship_To_Country ,'THEATER') "Reseller Theater",
    Cl.Company_Name "Customer Name",
    Cl.City "Customer City",
    Cl.State "Customer State",
    Edb2_Global.Country_Name_Theater(Cl.Country,'COUNTRY') "Customer Country",
    Edb2_Global.Country_Name_Theater(Cl.Country,'THEATER') "Customer Theater",
    Imv.So_Booked_Date "Sales Book Date",
    Imv.Ship_Date "Ship Date",
    Imv.Order_Number "Sales Order Number",
    Imv.Cust_Po_Number "PO Number",
    Cp.Item_Name "Product Name",
    Cp.Product_Serial_Number "Product Serial Number",
    TO_CHAR(Imv.contract_number)"Contract ID",
    Imv.Service_Description "Support Name",
    Imv.Service_Start_Date "Start Date",
    Imv.Service_End_Date "Expire Date",
    Imv.Header_Status "Header Status",
    Imv.Line_Status "Line Status",
    Imv.Line_Type "Line Type",
    Imv.Termination_Reason "Termination Reason",
    Cl.Location_Id "Location_id",
    cp.id "Product_id"
    FROM ib_support_contracts_mv imv,
    customer_products cp,
    customer_locations cl
    WHERE Upper (Trim (Imv.Serial_Number)) = Upper (Trim (Cp.Product_Serial_Number(+)))
    AND Cp.Location_Id = Cl.Location_Id(+)) a
    Edited by: HuaMin on May 9, 2012 2:58 PM

  • Help needed to optimize the query

    Help needed to optimize the query:
    The requirement is to select the record with max eff_date from HIST_TBL and that max eff_date should be > = '01-Jan-2007'.
    This is having high cost and taking around 15mins to execute.
    Can anyone help to fine-tune this??
       SELECT c.H_SEC,
                    c.S_PAID,
                    c.H_PAID,
                    table_c.EFF_DATE
       FROM    MTCH_TBL c
                    LEFT OUTER JOIN
                       (SELECT b.SEC_ALIAS,
                               b.EFF_DATE,
                               b.INSTANCE
                          FROM HIST_TBL b
                         WHERE b.EFF_DATE =
                                  (SELECT MAX (b2.EFF_DATE)
                                     FROM HIST_TBL b2
                                    WHERE b.SEC_ALIAS = b2.SEC_ALIAS
                                          AND b.INSTANCE =
                                                 b2.INSTANCE
                                          AND b2.EFF_DATE >= '01-Jan-2007')
                               OR b.EFF_DATE IS NULL) table_c
                    ON  table_c.SEC_ALIAS=c.H_SEC
                       AND table_c.INSTANCE = 100;

    To start with, I would avoid scanning HIST_TBL twice.
    Try this
    select c.h_sec
         , c.s_paid
         , c.h_paid
         , table_c.eff_date
      from mtch_tbl c
      left
      join (
              select sec_alias
                   , eff_date
                   , instance
                from (
                        select sec_alias
                             , eff_date
                             , instance
                             , max(eff_date) over(partition by sec_alias, instance) max_eff_date
                          from hist_tbl b
                         where eff_date >= to_date('01-jan-2007', 'dd-mon-yyyy')
                            or eff_date is null
               where eff_date = max_eff_date
                  or eff_date is null
           ) table_c
        on table_c.sec_alias = c.h_sec
       and table_c.instance  = 100;

  • HT1386 When I try to synch my husband's Iphone, it tells me that I need to download the latest version of Itunes.  So I did that, still tells me to download.  I can synch my phone just fine, its exactly the same as my husbands.

    I am trying to synch my husband's I Phone and cannot.  i have already done mine, which is identical to his.  When I try to synch his, I get the message that i need to download the latest version of i tunes, which i have done.  Each time i try to synch, it tells me the same thing.  I have downloaded Itunes 10 to bvoth teh phone and to my PC.  Help!

    When I try to synch his, I get the message that i need to download the latest version of i tunes, which i have done.  Each time i try to synch, it tells me the same thing.
    Let's try a standalone Apple Mobile Device Support install. It still might not install, but fingers crossed any error messages will give us a better idea of the underlying cause of why it's not installing under normal conditions.
    Download and save a copy of the iTunesSetup.exe (or iTunes64setup.exe) installer file to your hard drive:
    http://www.apple.com/itunes/download/
    Download and install the free trial version of WinRAR:
    http://www.rarlab.com/
    Right-click the iTunesSetup.exe (or iTunes64setup.exe), and select "Extract to iTunesSetup" (or "Extract to iTunes64Setup"). WinRAR will expand the contents of the file into a folder called "iTunesSetup" (or "iTunes64Setup").
    Go into the folder and doubleclick the AppleMobileDeviceSupport.msi (or AppleMobileDeviceSupport64.msi) to do a standalone AMDS install.
    (If it offers you the choice to remove or repair, choose "Remove", and if the uninstall goes through successfully, see if you can reinstall by doubleclicking the AppleMobileDeviceSupport.msi again.)
    Does it install (or uninstall and then reinstall) properly for you? If so, can you get a normal iTunes install to go through properly now?
    If instead you get an error message during the install (or uninstall), let us know what it says. (Precise text, please.)

Maybe you are looking for

  • Lumia 1020 missing pro cam app

    I've had this phone for for about 4 weeks now and have used the Nokia pro cam app every day. A few days ago I tried using it by pushing the camera button but the tutorial for the smart cam came up instead (I've already gone through the tutorial). I l

  • Can I connect my iPad to epson emp-x3 projector?

    I have a keynote presentation on my iPad and an Epson Emp-X3 LCD projector.  How do I connect the two to show the presentation?

  • Drill Down is not working after exporting to excel

    Hi, I have created a drill down report in SSRS . Its working perfect. But when I export it to excel, it is showing only the expanded nodes. But I want the same functionality which gives user to expand or collapse the nodes in Excel as well. Can any o

  • Netbeans 6.5 And tomcat

    how can i correctly configure tomcat with netbeans 6.5.. i installed tomcat separately with netbeans.. when i deploy an application. it says "Starting of Tomcat failed, the C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin\catalina.bat start

  • How can I sign out of my apple I'd

    Please help! How do I sign out of my appleid!?!!?