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

Откуда:
Сообщений: 90
Есть данные
select *
--    Pack
--       , UserCreate
--       , UserConfirm 
--       , DocumOper
--       , VidDocum
--       , CntVidDocum
--       , sum(SSum)
from
  (
    select Pack            --Номер пакета
           , UserCreate    -- пользователь создавший документ
           , UserConfirm   -- Пользователь подтвердивший документ
           , case when UserCreate = 'IP' then UserConfirm else UserCreate end DocumOper  -- документы обработанные сотрудником
           , case when UserCreate = 'IP' then 1 else 0  end VidDocum      /*1 Электрон, 0 -бумажный */
           , Count(case when UserCreate = 'IP' then 1 else 0  end) CntVidDocum   -- Количество
           , SUM(SSum) SSum                         --Сумма
    from (
        select 40 as Pack, 'IP' UserCreate,	'IVANOVA' UserConfirm,      123  SSum  from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  123        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  123        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  123        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  123        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  123        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  345        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  345        from dual union all
        select 40,	        'IP',	       	    'IVANOVA',                  456        from dual union all
        select 40,	        'IVANOVA',	    'PETROVA',                  55         from dual union all
        select 40,	        'IVANOVA',	    'PETROVA',                  456        from dual union all
        select 40,	        'IVANOVA',	    'PETROVA',                  345        from dual union all
        select 40,	        'IVANOVA',	    'PETROVA',                  234        from dual union all
        select 40,	        'IVANOVA',	    'PETROVA',                  456        from dual union all
        select 40,	        'IVANOVA',	    'PETROVA',                  456        from dual 
    )
    group by Pack,UserCreate , UserConfirm
  )
PIVOT (sum(SSum) as S FOR VidDocum IN ('0' as Bumaga, '1' as Electron))


Подскажите пожалуйста , как получить данные вида, как правильно написать пивот. чтобы получилась одна строка

пачка  сотрудник  кол-во эл док   сумма док  кол-во бум док  сумма
40     IVANOVA    9                    1884          6        2002
8 фев 17, 16:10    [20193845]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Elic
Member

Откуда: 1984. Выбраковка финно-угром началась. КЯЗ
Сообщений: 26713
+
select *
from
  (
    select Pack
           , case when UserCreate = 'IP' then UserConfirm else UserCreate end DocumOper  -- документы обработанные сотрудником
           , case when UserCreate = 'IP' then 1 else 0  end VidDocum      /*1 Электрон, 0 -бумажный */
           , ssum
    from (…)
  )
PIVOT (count(*) as c, sum(SSum) as S FOR VidDocum IN ('1' as Electron, '0' as Bumaga))
;
      PACK DOCUMOP ELECTRON_C ELECTRON_S   BUMAGA_C   BUMAGA_S
---------- ------- ---------- ---------- ---------- ----------
        40 IVANOVA          9       1884          6       2002
8 фев 17, 16:30    [20193970]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
fortnet
Member

Откуда:
Сообщений: 518
Как изменить - не знаю, а завернуть можно :

select Pack,usercreate, sum(cnt_el),sum (Electron_S),sum(cnt_el), sum(Bumaga_S) from (
select Pack
,decode (UserCreate,'IP',DocumOper,UserCreate) usercreate
,nvl2(Bumaga_S,CntVidDocum,null) cnt_b
,nvl2(Electron_S,CntVidDocum,null) cnt_el
,Bumaga_S
,Electron_S
from (
select *
-- Pack
-- , UserCreate
-- , UserConfirm
-- , DocumOper
-- , VidDocum
-- , CntVidDocum
-- , sum(SSum)
from
(
select Pack --Номер пакета
, UserCreate -- пользователь создавший документ
, UserConfirm -- Пользователь подтвердивший документ
, case when UserCreate = 'IP' then UserConfirm else UserCreate end DocumOper -- документы обработанные сотрудником
, case when UserCreate = 'IP' then 1 else 0 end VidDocum /*1 Электрон, 0 -бумажный */
, Count(case when UserCreate = 'IP' then 1 else 0 end) CntVidDocum -- Количество
, SUM(SSum) SSum --Сумма
from (
select 40 as Pack, 'IP' UserCreate, 'IVANOVA' UserConfirm, 123 SSum from dual union all
select 40, 'IP', 'IVANOVA', 123 from dual union all
select 40, 'IP', 'IVANOVA', 123 from dual union all
select 40, 'IP', 'IVANOVA', 123 from dual union all
select 40, 'IP', 'IVANOVA', 123 from dual union all
select 40, 'IP', 'IVANOVA', 123 from dual union all
select 40, 'IP', 'IVANOVA', 345 from dual union all
select 40, 'IP', 'IVANOVA', 345 from dual union all
select 40, 'IP', 'IVANOVA', 456 from dual union all
select 40, 'IVANOVA', 'PETROVA', 55 from dual union all
select 40, 'IVANOVA', 'PETROVA', 456 from dual union all
select 40, 'IVANOVA', 'PETROVA', 345 from dual union all
select 40, 'IVANOVA', 'PETROVA', 234 from dual union all
select 40, 'IVANOVA', 'PETROVA', 456 from dual union all
select 40, 'IVANOVA', 'PETROVA', 456 from dual
)
group by Pack,UserCreate , UserConfirm
)
PIVOT (sum(SSum) as S FOR VidDocum IN ('0' as Bumaga, '1' as Electron))
)
)group by Pack,usercreate;
8 фев 17, 16:51    [20194096]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Elic
Member

Откуда: 1984. Выбраковка финно-угром началась. КЯЗ
Сообщений: 26713
fortnet
а завернуть можно :
Усугубил говнокодом?
8 фев 17, 16:54    [20194109]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
fortnet
Member

Откуда:
Сообщений: 518
Elic,

Код как код.
8 фев 17, 17:04    [20194151]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
maxwait
Member

Откуда:
Сообщений: 90
Elic , fortnet, Спасибо!
8 фев 17, 19:40    [20194622]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
maxwait
Member

Откуда:
Сообщений: 90
Вдруг кому пригодится чтот подобное
select *
from
(
select Pack
, case when UserCreate = 'IP' then UserConfirm else UserCreate end DocumOper -- документы обработанные сотрудником
, case when UserCreate = 'IP' then 1 else 0 end VidDocum /*1 Электрон, 0 -бумажный */
, case when Pack = 40 then 1
when Pack = 41 then 2
else null end GrRang
, ssum
from (
select 40 as Pack, 'IP' UserCreate, 'IVANOVA' UserConfirm, 123 SSum from dual union all
select 40, 'IP', 'IVANOVA', 123 from dual union all
select 40, 'IP', 'PETROVA', 123 from dual union all
select 41, 'IP', 'IVANOVA', 123 from dual union all
select 41, 'IP', 'IVANOVA', 123 from dual union all
select 41, 'IP', 'IVANOVA', 123 from dual union all
select 41, 'IP', 'IVANOVA', 345 from dual union all
select 40, 'IP', 'IVANOVA', 345 from dual union all
select 40, 'IP', 'PETROVA', 456 from dual union all
select 40, 'IVANOVA', 'PETROVA', 55 from dual union all
select 40, 'IVANOVA', 'PETROVA', 456 from dual union all
select 40, 'IVANOVA', 'PETROVA', 345 from dual union all
select 41, 'IVANOVA', 'PETROVA', 234 from dual union all
select 41, 'IVANOVA', 'PETROVA', 456 from dual union all
select 41, 'PETROVA', 'PETROVA', 456 from dual
)
)
PIVOT (count(*) as c, sum(SSum) as S FOR VidDocum IN ('1' as Electron, '0' as Bumaga))
;
8 фев 17, 20:20    [20194695]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
maxwait
Member

Откуда:
Сообщений: 90
Добавил еще промежуточные итоги

Select
     pack
     , nvl(DocumOper,'Total')  as Oper
     , sum(Electron_c)         as el_col
     , sum(Electron_s)         as el_sum
     , sum(Bumaga_c)           as bum_col
     , sum(Bumaga_s)           as bum_sum
from(         
    select 
           pack
           , DocumOper
           , nvl(Electron_c,0) as Electron_c
           , nvl(Electron_s,0) as Electron_s
           , nvl(Bumaga_c,0) as Bumaga_c
           , nvl(Bumaga_s,0) as Bumaga_s
    from
    (
      select Pack
        , case when UserCreate = 'IP' then UserConfirm else UserCreate end DocumOper -- документы обработанные сотрудником
        , case when UserCreate = 'IP' then 1 else 0 end VidDocum /*1 Электрон, 0 -бумажный */
        , ssum
      from (
            select 40 as Pack, 'IP' UserCreate, 'IVANOVA' UserConfirm, 123 SSum from dual union all
            select 40,         'IP',            'IVANOVA',             123      from dual union all
            select 40,         'IP',            'PETROVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             345      from dual union all
            select 40,         'IP',            'IVANOVA',             345      from dual union all
            select 40,         'IP',            'PETROVA',             456      from dual union all
            select 40,         'IVANOVA',       'PETROVA',             55       from dual union all
            select 40,         'IVANOVA',       'PETROVA',             456      from dual union all
            select 40,         'IVANOVA',       'PETROVA',             345      from dual union all
            select 41,         'IVANOVA',       'PETROVA',             234      from dual union all
            select 41,         'IVANOVA',       'PETROVA',             456      from dual union all
            select 41,         'PETROVA',       'PETROVA',             456      from dual 
           )
     )
     PIVOT (count(*) as c, sum(SSum) as S FOR VidDocum IN ('1' as Electron, '0' as Bumaga))
   ) 
group by rollup(pack, DocumOper)
9 фев 17, 07:21    [20195269]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
maxwait
Member

Откуда:
Сообщений: 90
Вдруг кому еще пригодится, развернул еще по пачкам

select *
from (
    select 
         pack
         , DocumOper
         , nvl(Electron_c,0) as Electron_c
         , nvl(Electron_s,0) as Electron_s
         , nvl(Bumaga_c,0) as Bumaga_c
         , nvl(Bumaga_s,0) as Bumaga_s
    from
    (
      select Pack
        , case when UserCreate = 'IP' then UserConfirm else UserCreate end DocumOper -- документы обработанные сотрудником
        , case when UserCreate = 'IP' then 1 else 0 end VidDocum /*1 Электрон, 0 -бумажный */
        , ssum
      from ( /*Внутр запросом выбираем данные*/
            select 40 as Pack, 'IP' UserCreate, 'IVANOVA' UserConfirm, 123 SSum from dual union all
            select 40,         'IP',            'IVANOVA',             123      from dual union all
            select 40,         'IP',            'PETROVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             123      from dual union all
            select 41,         'IP',            'IVANOVA',             345      from dual union all
            select 40,         'IP',            'IVANOVA',             345      from dual union all
            select 40,         'IP',            'PETROVA',             456      from dual union all
            select 40,         'IVANOVA',       'PETROVA',             55       from dual union all
            select 40,         'IVANOVA',       'PETROVA',             456      from dual union all
            select 40,         'IVANOVA',       'PETROVA',             345      from dual union all
            select 41,         'IVANOVA',       'PETROVA',             234      from dual union all
            select 41,         'IVANOVA',       'PETROVA',             456      from dual union all
            select 41,         'PETROVA',       'PETROVA',             456      from dual 
           )
     )
     PIVOT (count(*) as c, sum(SSum) as S FOR VidDocum IN ('1' as Electron, '0' as Bumaga))
     Order by pack
  )
PIVOT (sum(Electron_c) as e_c, sum(Electron_s) as e_s, sum(Bumaga_c) as b_c, sum(Bumaga_s) as b_s FOR Pack In('40' as Pack40, '41' as Pack41))
9 фев 17, 08:25    [20195363]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Добрый Э - Эх
Guest
maxwait,

да успокойся уже.... никому не пригодится... каждый, приходящий сюда - приходит со своей исключительно уникальной, ранее никем нерешаемой проблемой. поэтому поиском не пользуется, а создает свой топик, как это сделал ты.
9 фев 17, 08:29    [20195372]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Elic
Member

Откуда: 1984. Выбраковка финно-угром началась. КЯЗ
Сообщений: 26713
maxwait
     Order by pack
  )
Быдлокод.
9 фев 17, 08:47    [20195425]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
maxwait
Member

Откуда:
Сообщений: 90
Elic,
почему быдлокод? как не быдлокодить?
9 фев 17, 11:07    [20195978]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Elic
Member

Откуда: 1984. Выбраковка финно-угром началась. КЯЗ
Сообщений: 26713
maxwait
как не быдлокодить?
Сортировать в надлежащих для этого местах.
9 фев 17, 11:09    [20195990]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
fortnet
Member

Откуда:
Сообщений: 518
maxwait,
Нет смысла сортировать результат и потом применять к нему агрегирующую функцию. Лишняя работа сервера и обманутые ожидания сортированных записей на выходе.
9 фев 17, 11:16    [20196015]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Добрый Э - Эх
Guest
fortnet
maxwait,
Лишняя работа сервера
есть твердая уверенность, что сервер будет заниматься этой бесполезной лишней работой?
9 фев 17, 12:25    [20196254]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
Добрый Э - Эх
Guest
fortnet
maxwait,
Нет смысла сортировать результат и потом применять к нему агрегирующую функцию. Лишняя работа сервера и обманутые ожидания сортированных записей на выходе.


в качестве иллюстрации
+ Оптимизатор честно отработал сортировку
explain plan for 
select *
  from dba_objects
  order by owner, object_type;

select * from table(dbms_xplan.display());

Plan hash value: 2314009818
 
-------------------------------------------------------------------------------------------------------
| Id  | Operation                       | Name        | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
-------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT                |             | 73505 |    12M|       |  3144   (2)| 00:00:12 |
|   1 |  SORT ORDER BY                  |             | 73505 |    12M|    14M|  3144   (2)| 00:00:12 |
|   2 |   VIEW                          | DBA_OBJECTS | 73505 |    12M|       |   282   (6)| 00:00:01 |
|   3 |    UNION-ALL                    |             |       |       |       |            |          |
|*  4 |     FILTER                      |             |       |       |       |            |          |
|*  5 |      HASH JOIN                  |             | 83037 |  6730K|       |   277   (6)| 00:00:01 |
|   6 |       TABLE ACCESS FULL         | USER$       |   105 |  1470 |       |     3   (0)| 00:00:01 |
|*  7 |       TABLE ACCESS FULL         | OBJ$        | 83037 |  5595K|       |   272   (5)| 00:00:01 |
|*  8 |      TABLE ACCESS BY INDEX ROWID| IND$        |     1 |     8 |       |     2   (0)| 00:00:01 |
|*  9 |       INDEX UNIQUE SCAN         | I_IND1      |     1 |       |       |     1   (0)| 00:00:01 |
|* 10 |     HASH JOIN                   |             |    37 |  1702 |       |     6  (17)| 00:00:01 |
|  11 |      TABLE ACCESS FULL          | LINK$       |    37 |  1184 |       |     2   (0)| 00:00:01 |
|  12 |      TABLE ACCESS FULL          | USER$       |   105 |  1470 |       |     3   (0)| 00:00:01 |
-------------------------------------------------------------------------------------------------------
 
Predicate Information (identified by operation id):
---------------------------------------------------
 
   4 - filter("O"."TYPE#"<>1 AND "O"."TYPE#"<>10 OR "O"."TYPE#"=1 AND  (SELECT 1 FROM 
              "SYS"."IND$" "I" WHERE "I"."OBJ#"=:B1 AND ("I"."TYPE#"=1 OR "I"."TYPE#"=2 OR "I"."TYPE#"=3 OR 
              "I"."TYPE#"=4 OR "I"."TYPE#"=6 OR "I"."TYPE#"=7 OR "I"."TYPE#"=9))=1)
   5 - access("O"."OWNER#"="U"."USER#")
   7 - filter("O"."LINKNAME" IS NULL AND BITAND("O"."FLAGS",128)=0 AND 
              "O"."NAME"<>'_NEXT_OBJECT' AND "O"."NAME"<>'_default_auditing_options_')
   8 - filter("I"."TYPE#"=1 OR "I"."TYPE#"=2 OR "I"."TYPE#"=3 OR "I"."TYPE#"=4 OR 
              "I"."TYPE#"=6 OR "I"."TYPE#"=7 OR "I"."TYPE#"=9)
   9 - access("I"."OBJ#"=:B1)
  10 - access("L"."OWNER#"="U"."USER#")
+ Оптимизатор избавляет сервер от ненужной сортировки
explain plan for 
select owner, object_type, count(1)
from (
select *
  from dba_objects
  order by owner, object_type
)
group by owner, object_type;

select * from table(dbms_xplan.display());

Plan hash value: 1528459061
 
-----------------------------------------------------------------------------------------------
| Id  | Operation                       | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
-----------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT                |             | 73505 |  2009K|   291   (9)| 00:00:02 |
|   1 |  HASH GROUP BY                  |             | 73505 |  2009K|   291   (9)| 00:00:02 |
|   2 |   VIEW                          | DBA_OBJECTS | 73505 |  2009K|   281   (6)| 00:00:01 |
|   3 |    UNION-ALL                    |             |       |       |            |          |
|*  4 |     FILTER                      |             |       |       |            |          |
|*  5 |      HASH JOIN                  |             | 83037 |  4135K|   277   (6)| 00:00:01 |
|   6 |       TABLE ACCESS FULL         | USER$       |   105 |  1470 |     3   (0)| 00:00:01 |
|*  7 |       TABLE ACCESS FULL         | OBJ$        | 83037 |  3000K|   272   (5)| 00:00:01 |
|*  8 |      TABLE ACCESS BY INDEX ROWID| IND$        |     1 |     8 |     2   (0)| 00:00:01 |
|*  9 |       INDEX UNIQUE SCAN         | I_IND1      |     1 |       |     1   (0)| 00:00:01 |
|* 10 |     HASH JOIN                   |             |    37 |   666 |     5  (20)| 00:00:01 |
|  11 |      INDEX FULL SCAN            | I_LINK1     |    37 |   148 |     1   (0)| 00:00:01 |
|  12 |      TABLE ACCESS FULL          | USER$       |   105 |  1470 |     3   (0)| 00:00:01 |
-----------------------------------------------------------------------------------------------
 
Predicate Information (identified by operation id):
---------------------------------------------------
 
   4 - filter("O"."TYPE#"<>1 AND "O"."TYPE#"<>10 OR "O"."TYPE#"=1 AND  (SELECT 1 FROM 
              "SYS"."IND$" "I" WHERE "I"."OBJ#"=:B1 AND ("I"."TYPE#"=1 OR "I"."TYPE#"=2 OR 
              "I"."TYPE#"=3 OR "I"."TYPE#"=4 OR "I"."TYPE#"=6 OR "I"."TYPE#"=7 OR "I"."TYPE#"=9))=1)
   5 - access("O"."OWNER#"="U"."USER#")
   7 - filter("O"."LINKNAME" IS NULL AND BITAND("O"."FLAGS",128)=0 AND 
              "O"."NAME"<>'_NEXT_OBJECT' AND "O"."NAME"<>'_default_auditing_options_')
   8 - filter("I"."TYPE#"=1 OR "I"."TYPE#"=2 OR "I"."TYPE#"=3 OR "I"."TYPE#"=4 OR 
              "I"."TYPE#"=6 OR "I"."TYPE#"=7 OR "I"."TYPE#"=9)
   9 - access("I"."OBJ#"=:B1)
  10 - access("L"."OWNER#"="U"."USER#")


Но в целом да - писать, ухудшая читабельность и понимание кода, то, что сервер всё одно делать не будет - немного попахивает быдлокодингом...
9 фев 17, 12:36    [20196308]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с pivot'ом  [new]
fortnet
Member

Откуда:
Сообщений: 518
Добрый Э - Эх,

Не всегда, да, но не гарантированно...

select object_type,count(*) from (select o.*,rownum from user_objects o order by object_type )
group by object_type;

---------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
---------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1744 | 22672 | 2026 (1)| 00:00:01 |
| 1 | SORT GROUP BY NOSORT | | 1744 | 22672 | 2026 (1)| 00:00:01 |
| 2 | VIEW | | 1744 | 22672 | 2026 (1)| 00:00:01 |
| 3 | SORT ORDER BY | | 1744 | 514K| 2026 (1)| 00:00:01 |
| 4 | COUNT | | | | | |
| 5 | VIEW | USER_OBJECTS | 1744 | 514K| 2025 (0)| 00:00:01 |
| 6 | UNION-ALL | | | | | |
|* 7 | TABLE ACCESS BY INDEX ROWID | SUM$ | 1 | 12 | 1 (0)| 00:00:01 |
|* 8 | INDEX UNIQUE SCAN | I_SUM$_1 | 1 | | 0 (0)| 00:00:01 |
|* 9 | TABLE ACCESS FULL | USER_EDITIONING$ | 1 | 6 | 2 (0)| 00:00:01 |
| 10 | TABLE ACCESS BY INDEX ROWID BATCHED| OBJ$ | 1 | 31 | 4 (0)| 00:00:01 |
|* 11 | INDEX RANGE SCAN | I_OBJ1 | 1 | | 3 (0)| 00:00:01 |
|* 12 | FILTER | | | | | |
|* 13 | HASH JOIN | | 1907 | 201K| 1147 (0)| 00:00:01 |
| 14 | INDEX FULL SCAN | I_USER2 | 182 | 4186 | 1 (0)| 00:00:01 |
|* 15 | TABLE ACCESS FULL | OBJ$ | 1907 | 158K| 1146 (0)| 00:00:01 |
|* 16 | TABLE ACCESS BY INDEX ROWID | IND$ | 1 | 9 | 2 (0)| 00:00:01 |
|* 17 | INDEX UNIQUE SCAN | I_IND1 | 1 | | 1 (0)| 00:00:01 |
|* 18 | TABLE ACCESS FULL | USER_EDITIONING$ | 1 | 6 | 2 (0)| 00:00:01 |
| 19 | NESTED LOOPS SEMI | | 1 | 30 | 3 (0)| 00:00:01 |
|* 20 | INDEX SKIP SCAN | I_USER2 | 1 | 20 | 1 (0)| 00:00:01 |
|* 21 | INDEX RANGE SCAN | I_OBJ4 | 1 | 10 | 2 (0)| 00:00:01 |
|* 22 | TABLE ACCESS FULL | USER_EDITIONING$ | 1 | 6 | 2 (0)| 00:00:01 |
|* 23 | TABLE ACCESS FULL | LINK$ | 4 | 132 | 2 (0)| 00:00:01 |
---------------------------------------------------------------------------------------------------------------
16 фев 17, 17:26    [20218763]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить