Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 не используется индекс  [new]
su26
Guest
select *
from  d 
where d.id1 = 999


есть индекс id1,id2
вот такой простой запрос его не использует
даже если указать хинтом

FAQ смотрел
ни одна из причин указанных там не катит
1 дек 12, 19:49    [13562243]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
Серафимный Шестикрыл
Member [заблокирован]

Откуда: С луны свалился
Сообщений: 2922
su26
есть индекс id1,id2
вот такой простой запрос его не использует
даже если указать хинтом


Почему ты думаешь, что кто-то должен тебе тут верить на слово ?

1) скрипты DDL/DML
2) как ты это проверял
3) версия Oracle

в студию

P.S. лет 30 назад студиозов еще учили, что основа научного знания - верификация и повторяемость результатов. Сейчас наверное уже не учат ?
1 дек 12, 20:13    [13562359]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
есть индекс
Guest
su26
select *
from  d 
where d.id1 = 999


есть индекс id1,id2
вот такой простой запрос его не использует
даже если указать хинтом

FAQ смотрел
ни одна из причин указанных там не катит


а может индекс invisible, unusable?
1 дек 12, 20:20    [13562391]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
Серафимный Шестикрыл
Member [заблокирован]

Откуда: С луны свалился
Сообщений: 2922
есть индекс
а может индекс invisible, unusable?


а может быть таблица в другой схеме, а может он колонки местами перепутал,
а может быть таблица не та, а может быть он хинт не так пишет, а может он статистику не собрал, а может собрал, но таблица пустая была, а может быть корова, а может бегемот...

продолжим ?
1 дек 12, 20:23    [13562402]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
su26
Guest
проблема решена, извините за беспокойство

вот уж не мог подумать что кто-то станет делать ID varchar2
1 дек 12, 20:44    [13562513]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
init.ora
Member

Откуда: гетто
Сообщений: 317
su26
select *
from  d 
where d.id1 = 999


есть индекс id1,id2
вот такой простой запрос его не использует


легко:
create table d
as
select 999 as id1
from dba_objects;

create index d_a_ind on d(id1);

alter index d_a_ind invisible; 

select*
from  d 
where d.id1 = 999
1 дек 12, 23:37    [13563007]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
init.ora
Member

Откуда: гетто
Сообщений: 317
su26

даже если указать хинтом


create table d
as
select 999 as id1
from dba_objects;

create index d_a_ind on d(id1);

alter index d_a_ind invisible; 

select --+ index(d,d_a_ind)
*
from  d 
where d.id1 = 999
1 дек 12, 23:38    [13563008]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
init.ora
Member

Откуда: гетто
Сообщений: 317
оффтоп:
можно ли как нибудь в Pl\sql developer план запроса получать в таком же виде как в sql*plus?

я делаю так:

1) New command window
2) explain plan for select * from dual;
3) select * from table(dbms_xplan.display);

получаю:

PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------
Plan hash value: 272002086
--------------------------------------------------------------------------
| Id  | Operation         | Name | Rows  | Bytes | Cost (%CPU)| Time     |
--------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |      |     1 |     2 |     2   (0)| 00:00:01 |
|   1 |  TABLE ACCESS FULL| DUAL |     1 |     2 |     2   (0)| 00:00:01 |
--------------------------------------------------------------------------
Note
-----
   - 'PLAN_TABLE' is old version
 
12 rows selected


короче никак?
1 дек 12, 23:46    [13563032]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
init.ora
Member

Откуда: гетто
Сообщений: 317
[quot Серафимный Шестикрыл]
su26
P.S. лет 30 назад студиозов еще учили, что основа научного знания - верификация и повторяемость результатов. Сейчас наверное уже не учат ?

нет)
1 дек 12, 23:50    [13563046]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
_Nikotin
Member

Откуда: СПб
Сообщений: 2965
init.ora,

Дропнуть plan_table в своей схеме.
1 дек 12, 23:52    [13563051]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
init.ora
Member

Откуда: гетто
Сообщений: 317
_Nikotin,
да, да, это я прочитал только что.

ниразу не смотрел план таким образом, только с помощью f5 в pl\sql developer.
2 дек 12, 00:17    [13563138]     Ответить | Цитировать Сообщить модератору
 Re: не используется индекс  [new]
_Nikotin
Member

Откуда: СПб
Сообщений: 2965
init.ora,

У этих ide помимо 1000 других раздражающих вещей есть особенность: при отмирании главного коннекта предлагать создать кастрированную локальную plan_table при попытке explain plan.
2 дек 12, 00:24    [13563182]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить