Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 не правильное cardinality при поиске выше HIGH_VALUE  [new]
niv76
Member

Откуда: Киев
Сообщений: 115
Добрый день.

Подскажите пожалуйста как наиболее правильно побороть такую проблему.
Есть табличка BI_ORDER с индексированным полем VALUE_DATE_SETTLEMENT_ID (number) в которое пишится дата в формате YYYYMMDD.
Данные по этому полю распределены практически равномерно (диаграмы можно удалить. Оракл почему-то их создал)
примерно 10тыс строк в день (разбросом можно пренебречь) и накапливаются постепенно в течении дня. Статистика на эту табличку собирается с параметрами авто. Т.е. время от времени собирается сама.
По этой табличке постоянно идут запросы за текущий день и этот день всегда выше HIGH_VALUE. Из-за этого оракл на этапе построения плана оракл делает пикинг бинд переменной и сильно занижает кардиналити по этому фильтру. Вместо 10тыс берет около 100 (см. строка плана 22). Дальше идет еще один сложный фильтр по многим столбцам, который тоже не верно оценивается, но это не такая большая проблема. Если перед запуском запроса собрать статистику, то кардиналити строчек 22 и 23 возрастает достаточно, чтобы план был правильным....

Вопрос, как собрать статистику так чтобы оракл оценивал кардиналити выше HIGH_VALUE так же как и внутри диапазона LOW_VALUE and HIGH_VALUE? Я хочу чтобы он оценивал кардиналити по этому полю за сегодняшний день также, как и за любой другой день....

Ктому же таких таблиц у нас много. База OLTP. Подскажите плиз, как лучше организовать сбор статистики в данном случае....
Спасибо.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| Id  | Operation                                      | Name                           | Starts | E-Rows |E-Bytes| Cost (%CPU)| A-Rows |   A-Time   | Buffers | Reads  |  OMem |  1Mem | Used-Mem |
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT                               |                                |      1 |        |       |   939 (100)|    331 |00:00:03.96 |     111K|    760 |       |       |          |
|   1 |  SORT ORDER BY                                 |                                |      1 |      1 |   138 |   939   (2)|    331 |00:00:03.96 |     111K|    760 | 55296 | 55296 |49152  (0)|
|*  2 |   FILTER                                       |                                |      1 |        |       |            |    331 |00:00:04.15 |     111K|    760 |       |       |          |
|   3 |    NESTED LOOPS                                |                                |      1 |        |       |            |   1853 |00:00:03.73 |   95263 |    760 |       |       |          |
|   4 |     NESTED LOOPS                               |                                |      1 |      1 |   138 |   934   (2)|   1853 |00:00:03.73 |   93410 |    760 |       |       |          |
|   5 |      NESTED LOOPS OUTER                        |                                |      1 |      1 |   132 |   933   (2)|   1853 |00:00:03.72 |   93406 |    760 |       |       |          |
|   6 |       NESTED LOOPS                             |                                |      1 |      1 |   101 |   932   (2)|   1853 |00:00:02.90 |   93399 |    758 |       |       |          |
|   7 |        NESTED LOOPS                            |                                |      1 |      2 |   170 |   922   (2)|   1853 |00:00:02.50 |   35449 |    758 |       |       |          |
|   8 |         TABLE ACCESS BY INDEX ROWID            | SETTLEMENT                     |      1 |      1 |    12 |     2   (0)|      1 |00:00:00.01 |       3 |      0 |       |       |          |
|*  9 |          INDEX UNIQUE SCAN                     | SETTLEMENT_NEXT_SETTL_IDX      |      1 |      1 |       |     1   (0)|      1 |00:00:00.01 |       2 |      0 |       |       |          |
|  10 |         VIEW                                   | BI_WL_REBATE_ORDERS            |      1 |      2 |   146 |   920   (2)|   1853 |00:00:02.50 |   35446 |    758 |       |       |          |
|  11 |          CONCATENATION                         |                                |      1 |        |       |            |   1853 |00:00:02.50 |   35446 |    758 |       |       |          |
|* 12 |           FILTER                               |                                |      1 |        |       |            |   1853 |00:00:02.50 |   35446 |    758 |       |       |          |
|* 13 |            HASH JOIN                           |                                |      1 |      1 |   191 |   460   (2)|   1853 |00:00:02.50 |   35446 |    758 |  1014K|   954K| 1075K (0)|
|  14 |             NESTED LOOPS                       |                                |      1 |        |       |            |   1853 |00:00:06.27 |   33822 |    758 |       |       |          |
|  15 |              NESTED LOOPS                      |                                |      1 |      1 |   175 |    12   (0)|   1853 |00:00:06.24 |   32545 |    754 |       |       |          |
|  16 |               NESTED LOOPS                     |                                |      1 |      1 |   156 |     8   (0)|   1853 |00:00:05.36 |   25118 |    723 |       |       |          |
|  17 |                NESTED LOOPS                    |                                |      1 |      1 |   130 |     6   (0)|   2053 |00:00:03.60 |   20050 |    213 |       |       |          |
|  18 |                 NESTED LOOPS                   |                                |      1 |      1 |    91 |     5   (0)|  10264 |00:00:00.08 |     298 |    139 |       |       |          |
|  19 |                  TABLE ACCESS BY INDEX ROWID   | WL_CONFIG                      |      1 |      1 |    47 |     1   (0)|      1 |00:00:00.01 |       2 |      0 |       |       |          |
|* 20 |                   INDEX UNIQUE SCAN            | WL_CONFIG_PK                   |      1 |      1 |       |     0   (0)|      1 |00:00:00.01 |       1 |      0 |       |       |          |
|* 21 |                  TABLE ACCESS BY INDEX ROWID   | BI_ORDER                       |      1 |      1 |    44 |     4   (0)|  10264 |00:00:00.07 |     296 |    139 |       |       |          |
|* 22 |                   INDEX RANGE SCAN             | BI_ORDER_VALUE_DATE_IDX        |      1 |     97 |       |     2   (0)|  10264 |00:00:00.01 |      36 |     28 |       |       |          |
|* 23 |                 TABLE ACCESS BY INDEX ROWID    | BI_ACCOUNT                     |  10264 |      1 |    39 |     1   (0)|   2053 |00:00:00.35 |   19752 |     74 |       |       |          |
|* 24 |                  INDEX UNIQUE SCAN             | PK_BI_ACCOUNT                  |  10264 |      1 |       |     0   (0)|  10264 |00:00:00.32 |    9428 |     74 |       |       |          |
|* 25 |                TABLE ACCESS BY INDEX ROWID     | BI_ORDER_CHANGE                |   2053 |      1 |    26 |     2   (0)|   1853 |00:00:01.72 |    5068 |    510 |       |       |          |
|* 26 |                 INDEX UNIQUE SCAN              | BI_ORDER_CHANGE_PK             |   2053 |      1 |       |     1   (0)|   2053 |00:00:00.60 |    3015 |     31 |       |       |          |
|  27 |               INLIST ITERATOR                  |                                |   1853 |        |       |            |   1853 |00:00:00.15 |    7427 |     31 |       |       |          |
|* 28 |                INDEX RANGE SCAN                | DB_ACCOUNT_BAL_CHANGE_IDX2     |   3706 |      1 |       |     3   (0)|   1853 |00:00:00.15 |    7427 |     31 |       |       |          |
|  29 |              TABLE ACCESS BY GLOBAL INDEX ROWID| DB_ACCOUNT_BAL_CHANGE          |   1853 |      1 |    19 |     4   (0)|   1853 |00:00:00.06 |    1277 |      4 |       |       |          |
|  30 |             TABLE ACCESS FULL                  | BI_ACCOUNT                     |      1 |  84254 |  1316K|   447   (1)|  85664 |00:00:00.03 |    1624 |      0 |       |       |          |
|* 31 |           FILTER                               |                                |      1 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 32 |            HASH JOIN                           |                                |      0 |      1 |   191 |   460   (2)|      0 |00:00:00.01 |       0 |      0 |   716K|   716K|          |
|  33 |             NESTED LOOPS                       |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  34 |              NESTED LOOPS                      |                                |      0 |      1 |   175 |    12   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  35 |               NESTED LOOPS                     |                                |      0 |      1 |   156 |     8   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  36 |                NESTED LOOPS                    |                                |      0 |      1 |   130 |     6   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  37 |                 NESTED LOOPS                   |                                |      0 |      1 |    86 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  38 |                  TABLE ACCESS BY INDEX ROWID   | WL_CONFIG                      |      0 |      1 |    47 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 39 |                   INDEX UNIQUE SCAN            | WL_CONFIG_PK                   |      0 |      1 |       |     0   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 40 |                  TABLE ACCESS BY INDEX ROWID   | BI_ACCOUNT                     |      0 |      1 |    39 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 41 |                   INDEX UNIQUE SCAN            | PK_BI_ACCOUNT                  |      0 |      1 |       |     0   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 42 |                 TABLE ACCESS BY INDEX ROWID    | BI_ORDER                       |      0 |      1 |    44 |     4   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 43 |                  INDEX RANGE SCAN              | BI_ORDER_VALUE_DATE_IDX        |      0 |     97 |       |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 44 |                TABLE ACCESS BY INDEX ROWID     | BI_ORDER_CHANGE                |      0 |      1 |    26 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 45 |                 INDEX UNIQUE SCAN              | BI_ORDER_CHANGE_PK             |      0 |      1 |       |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  46 |               INLIST ITERATOR                  |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 47 |                INDEX RANGE SCAN                | DB_ACCOUNT_BAL_CHANGE_IDX2     |      0 |      1 |       |     3   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  48 |              TABLE ACCESS BY GLOBAL INDEX ROWID| DB_ACCOUNT_BAL_CHANGE          |      0 |      1 |    19 |     4   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  49 |             TABLE ACCESS FULL                  | BI_ACCOUNT                     |      0 |  84254 |  1316K|   447   (1)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 50 |        TABLE ACCESS BY INDEX ROWID             | WL_ACCOUNT                     |   1853 |      1 |    16 |     5   (0)|   1853 |00:00:00.42 |   57950 |      0 |       |       |          |
|* 51 |         INDEX RANGE SCAN                       | WL_ACCOUNT_FDX1                |   1853 |     99 |       |     1   (0)|   1301K|00:00:00.41 |    3989 |      0 |       |       |          |
|* 52 |       VIEW PUSHED PREDICATE                    |                                |   1853 |      1 |    31 |     1   (0)|      0 |00:00:00.90 |       7 |      2 |       |       |          |
|  53 |        NESTED LOOPS                            |                                |   1853 |        |       |            |      0 |00:00:00.90 |       7 |      2 |       |       |          |
|  54 |         NESTED LOOPS                           |                                |   1853 |      2 |    94 |     5   (0)|      0 |00:00:00.89 |       7 |      2 |       |       |          |
|  55 |          NESTED LOOPS SEMI                     |                                |   1853 |      2 |    70 |     3   (0)|      0 |00:00:00.89 |       7 |      2 |       |       |          |
|  56 |           NESTED LOOPS                         |                                |   1853 |      2 |    62 |     3   (0)|      0 |00:00:00.89 |       7 |      2 |       |       |          |
|  57 |            INDEX FULL SCAN                     | WL_ACCOUNT_IB_PK               |   1853 |    218 |  1962 |     1   (0)|    403K|00:00:00.11 |       3 |      1 |       |       |          |
|* 58 |            TABLE ACCESS BY INDEX ROWID         | IB_BIOP_CONTRACT               |    403K|      1 |    22 |     1   (0)|      0 |00:00:00.68 |       4 |      1 |       |       |          |
|* 59 |             INDEX RANGE SCAN                   | IB_BIOP_CONTRACT_IDX1          |    403K|      1 |       |     0   (0)|   3706 |00:00:00.33 |       3 |      1 |       |       |          |
|* 60 |           VIEW                                 | IB_READY_FOR_REBATES           |      0 |      1 |     4 |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  61 |            TEMP TABLE TRANSFORMATION           |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  62 |             LOAD AS SELECT                     |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |   256K|   256K|          |
|* 63 |              VIEW                              | index$_join$_012               |      0 |      2 |    12 |     2  (50)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 64 |               HASH JOIN                        |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |  1269K|  1269K|          |
|  65 |                INLIST ITERATOR                 |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 66 |                 INDEX UNIQUE SCAN              | WL_PARTNER_BRANCH_CODE_UIDX    |      0 |      2 |    12 |     0   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  67 |                INDEX FAST FULL SCAN            | WL_PARTNER_PK                  |      0 |      2 |    12 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  68 |             UNION-ALL PARTITION                |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 69 |              FILTER                            |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  70 |               TABLE ACCESS BY INDEX ROWID      | IB_REFFERALS                   |      0 |      1 |     8 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 71 |                INDEX UNIQUE SCAN               | PK_IB_REFFERALS                |      0 |      1 |       |     0   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 72 |               VIEW                             |                                |      0 |      2 |    26 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  73 |                TABLE ACCESS FULL               | SYS_TEMP_0FD9DA0DD_54810CF0    |      0 |      2 |     8 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  74 |               FAST DUAL                        |                                |      0 |      1 |       |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 75 |              FILTER                            |                                |      0 |        |       |            |      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  76 |               NESTED LOOPS                     |                                |      0 |      1 |   243 |     5   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  77 |                NESTED LOOPS                    |                                |      0 |      1 |   230 |     3   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  78 |                 NESTED LOOPS                   |                                |      0 |      1 |    37 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 79 |                  TABLE ACCESS BY INDEX ROWID   | IB_REFFERALS                   |      0 |      1 |    15 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 80 |                   INDEX UNIQUE SCAN            | PK_IB_REFFERALS                |      0 |      1 |       |     0   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 81 |                  TABLE ACCESS BY INDEX ROWID   | SUB_ACCOUNT                    |      0 |      1 |    22 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 82 |                   INDEX UNIQUE SCAN            | SUB_ACCOUNT_ACNT_N_SACNT_N_UNQ |      0 |      1 |       |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 83 |                 TABLE ACCESS BY INDEX ROWID    | ACCOUNT                        |      0 |    629K|   115M|     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 84 |                  INDEX UNIQUE SCAN             | ACCOUNT_UNQ1                   |      0 |      1 |       |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 85 |                VIEW                            |                                |      0 |      1 |    13 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  86 |                 TABLE ACCESS FULL              | SYS_TEMP_0FD9DA0DD_54810CF0    |      0 |      2 |     8 |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|  87 |               FAST DUAL                        |                                |      0 |      1 |       |     2   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 88 |          INDEX UNIQUE SCAN                     | WL_ACCOUNT_PK                  |      0 |      1 |       |     0   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 89 |         TABLE ACCESS BY INDEX ROWID            | WL_ACCOUNT                     |      0 |      1 |    12 |     1   (0)|      0 |00:00:00.01 |       0 |      0 |       |       |          |
|* 90 |      INDEX UNIQUE SCAN                         | WL_PARTNER_PK                  |   1853 |      1 |       |     0   (0)|   1853 |00:00:00.01 |       4 |      0 |       |       |          |
|* 91 |     TABLE ACCESS BY INDEX ROWID                | WL_PARTNER                     |   1853 |      1 |     6 |     1   (0)|   1853 |00:00:00.01 |    1853 |      0 |       |       |          |
|* 92 |    FILTER                                      |                                |   1853 |        |       |            |   1522 |00:00:00.09 |   16322 |      0 |       |       |          |
|  93 |     PARTITION RANGE SINGLE                     |                                |   1853 |      1 |    37 |     4   (0)|   1522 |00:00:00.09 |   16322 |      0 |       |       |          |
|  94 |      PARTITION HASH SINGLE                     |                                |   1853 |      1 |    37 |     4   (0)|   1522 |00:00:00.08 |   16322 |      0 |       |       |          |
|* 95 |       TABLE ACCESS BY LOCAL INDEX ROWID        | WL_REBATES                     |   1853 |      1 |    37 |     4   (0)|   1522 |00:00:00.08 |   16322 |      0 |       |       |          |
|* 96 |        INDEX RANGE SCAN                        | WL_REBATES_SETTL_CL_ID_IDX     |   1853 |      1 |       |     3   (0)|    167K|00:00:00.09 |    3992 |      0 |       |       |          |
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Peeked Binds (identified by position):
--------------------------------------

1 - (NUMBER): 3
2 - (NUMBER): (null)
3 - (NUMBER): (null)
4 - (NUMBER): 20160407
5 - (NUMBER): (null)
6 - (NUMBER): (null)
7 - (NUMBER): 2
8 - (VARCHAR2(30), CSID=871): 'BI_ACCOUNT'
9 - (VARCHAR2(30), CSID=871): 'BI_ORDER'

Predicate Information (identified by operation id):
---------------------------------------------------

2 - filter( IS NULL)
9 - access("NEXT_SETTLEMENT_ID"=:B5)
12 - filter(:B3 IS NULL)
13 - access("BA1"."DB_ACCOUNT_ID"="BC1"."DB_ACCOUNT_ID")
20 - access("INDEX_NAME"='DUKASCOPY_WL_PARTNER_ID')
21 - filter(("BO"."BI_ORDER_ID">=NVL(:B7,"BO"."BI_ORDER_ID") AND "BO"."BI_ORDER_ID"<=NVL(:B6,"BO"."BI_ORDER_ID") AND "BO"."INSTRUMENT" IS NOT NULL))
22 - access("BO"."VALUE_DATE_SETTLEMENT_ID"=:B5)
23 - filter(("BA"."WL_PARTNER_ID"=NVL(:B4,"BA"."WL_PARTNER_ID") AND "BA"."PROD_T"='BI_ACCOUNT_T' AND "BA"."ACC_TYPE"='REG' AND "BA"."PROD"='BI_ACCOUNT' AND
"BA"."WL_PARTNER_ID"<>TO_NUMBER("VALUE")))
24 - access("BO"."BI_ACC_ID"="BA"."BI_ACC_ID")
filter("BA"."BI_ACC_ID" IS NOT NULL)
25 - filter("BOC"."ORDER_STATE"='FILLED')
26 - access("BOC"."BI_ORD_CH_ID"="BO"."MAX_BI_ORD_CH_ID")
28 - access((("BC1"."DEAL_SRC"='BIDMA' OR "BC1"."DEAL_SRC"='B_BOOK')) AND "BC1"."DEAL_SRC_ID"="BO"."BI_ORDER_ID")
31 - filter(:B3 IS NOT NULL)
32 - access("BA1"."DB_ACCOUNT_ID"="BC1"."DB_ACCOUNT_ID")
39 - access("INDEX_NAME"='DUKASCOPY_WL_PARTNER_ID')
40 - filter(("BA"."WL_PARTNER_ID"=NVL(:B4,"BA"."WL_PARTNER_ID") AND "BA"."PROD_T"='BI_ACCOUNT_T' AND "BA"."ACC_TYPE"='REG' AND "BA"."PROD"='BI_ACCOUNT' AND
"BA"."WL_PARTNER_ID"<>TO_NUMBER("VALUE")))
41 - access("BA"."BI_ACC_ID"=:B3)
42 - filter(("BO"."BI_ORDER_ID">=NVL(:B7,"BO"."BI_ORDER_ID") AND "BO"."BI_ORDER_ID"<=NVL(:B6,"BO"."BI_ORDER_ID") AND "BO"."INSTRUMENT" IS NOT NULL AND "BO"."BI_ACC_ID"="BA"."BI_ACC_ID"))
43 - access("BO"."VALUE_DATE_SETTLEMENT_ID"=:B5)
44 - filter("BOC"."ORDER_STATE"='FILLED')
45 - access("BOC"."BI_ORD_CH_ID"="BO"."MAX_BI_ORD_CH_ID")
47 - access((("BC1"."DEAL_SRC"='BIDMA' OR "BC1"."DEAL_SRC"='B_BOOK')) AND "BC1"."DEAL_SRC_ID"="BO"."BI_ORDER_ID")
50 - filter("WA"."WL_ACCOUNT_TYPE_ID"=:B2)
51 - access("R"."WL_PARTNER_ID"="WA"."WL_PARTNER_ID")
52 - filter(("R"."CREATE_TIMEST">=INTERNAL_FUNCTION("IBC"."START_DATE") AND "R"."CREATE_TIMEST"<=NVL("IBC"."END_DATE",INTERNAL_FUNCTION("R"."CREATE_TIMEST")+1)))
58 - filter(("IBC"."BI_ACC_ID"="R"."BI_ACC_ID" AND "IBC"."RATIO_FROM_VOL"<>0))
59 - access("WAI"."IB_ID"="IBC"."IB_ID")
60 - filter("IRR"."IB_ID"="IBC"."IB_ID")
63 - filter(("BRANCH_CODE"='EUR' OR "BRANCH_CODE"='GVA'))
64 - access(ROWID=ROWID)
66 - access(("BRANCH_CODE"='EUR' OR "BRANCH_CODE"='GVA'))
69 - filter(( IS NULL OR ='DEMO_CUST'))
71 - access("IR"."IB_ID"="IBC"."IB_ID")
72 - filter("WL_PARTNER_ID"=:B1)
75 - filter(<>'DEMO_CUST')
79 - filter(("IR"."ACCOUNT_NUMBER" IS NOT NULL AND "IR"."SUB_ACCOUNT_NUMBER" IS NOT NULL))
80 - access("IR"."IB_ID"="IBC"."IB_ID")
81 - filter((INTERNAL_FUNCTION("SA"."SUB_ACCOUNT_STATUS_ID") AND INTERNAL_FUNCTION("SA"."SUB_ACCOUNT_TYPE_ID")))
82 - access("SA"."ACCOUNT_NUMBER"="IR"."ACCOUNT_NUMBER" AND "SA"."SUB_ACCOUNT_NUMBER"="IR"."SUB_ACCOUNT_NUMBER")
83 - filter(("A"."CLOSED" IS NULL AND ("A"."BLOCK" IS NULL OR  NOT REGEXP_LIKE ("A"."BLOCK",'deposits','i',HEXTORAW('C07AC7EB01000000C6B71102000000000000000000000000BCC2B5060000000000000
0000000000000000000000000001800000000000000F07AC7EB0100000002000000000000000000000085000000') ))))
84 - access("A"."ACCOUNT_NUMBER"="IR"."ACCOUNT_NUMBER")
85 - filter("IR"."WL_PARTNER_ID"="WL_PARTNER_ID")
88 - access("WAI"."WL_ACCOUNT_ID"="WA"."WL_ACCOUNT_ID")
89 - filter("WA"."WL_ACCOUNT_TYPE_ID"=:B1)
90 - access("R"."WL_PARTNER_ID"="WP"."WL_PARTNER_ID")
91 - filter("WP"."BIOP_VOL_REBATE_PERC"<>0)
92 - filter(:B9<>:B8)
95 - filter(("W"."DEAL_SOURCE_ID"=:B1 AND "W"."CLIENT_SOURCE"=:B11 AND "W"."DEAL_SOURCE"=:B10))
96 - access("W"."SETTLEMENT_ID"=:B1 AND "W"."CLIENT_SOURCE_ID"=:B2)
8 апр 16, 15:50    [19033754]     Ответить | Цитировать Сообщить модератору
 Re: не правильное cardinality при поиске выше HIGH_VALUE  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
niv76,

Ночной джоб, который правит статистику high value на плюс один день. Пример есть у льюиса в блоге
8 апр 16, 16:41    [19034207]     Ответить | Цитировать Сообщить модератору
 Re: не правильное cardinality при поиске выше HIGH_VALUE  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
Хотя я бы не парился с ежедневным а ежемесячно добавлял месяц
8 апр 16, 16:42    [19034214]     Ответить | Цитировать Сообщить модератору
 Re: не правильное cardinality при поиске выше HIGH_VALUE  [new]
niv76
Member

Откуда: Киев
Сообщений: 115
Спасибо.
Удалил гистограммы и поднял high_value до 20160501 скриптом Льюиса.
Проблема решилась.
Поигрался после этого запросами

select * from bi_order where VALUE_DATE_SETTLEMENT_ID = 20160501... 20160502...20160601..

Заметил, что оракл довольно плавно понижает кардиналити при выходе за high_value.
Так что похоже, что проблема была из-за гистограм (тем более у меня создались frequency)...
11 апр 16, 16:54    [19043800]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить