Индекс не используется в представлении с предложением WHERE CONTAINS - PullRequest
5 голосов
/ 28 июля 2011

Я создал таблицу, и один из столбцов является адресом.Затем я создал представление с предложением WHERE CONTAINS, в котором выбор состояний возможен только для адреса, содержащего определенное слово.

Затем я создал индекс столбца адреса в исходной таблице.

Он говорит, что индекс создан.

Когда я набираю

select * from myview

Там написано

drg-10599: column is not indexed.  

Есть идеи, почему это не работает?

1 Ответ

10 голосов
/ 28 июля 2011

Вам потребуется создать индекс Oracle Text, а не стандартный индекс b-дерева.Существует * несколько вариантов создания и поддержки индексов Oracle Text , которые вы действительно должны прочитать, чтобы точно определить, какие опции вы хотите использовать.

Самый простой из возможных операторов DDLбыть

CREATE INDEX myindex ON table_a(address) 
       INDEXTYPE IS CTXSYS.CONTEXT;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...