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

Откуда:
Сообщений: 388
Oracle 10.

create table test_xml
(
n       number,
d       xmltype
)
;

insert into test_xml (n,d) values (1,xmltype('
        <H>
                <F att="11"></F>
                <F att="12"></F>
        </H>'));
insert into test_xml (n,d) values (2,xmltype('
        <H>
                <F att="21"></F>
                <F att="22"></F>
       </H>'));

select l.extract('/F/@att').getStringVal() att,t.n
from test_xml t,table(xmlsequence(extract(t.d,'H/F'))) l
where l.extract('/F/@att').getStringVal()=21
;


Как создать индекс для условия l.extract('/F/@att').getStringVal()=21?
Вроде в доке написано
CREATE INDEX test_xml_i ON test_xml t
(t."d"."H"."F"."att");
но что-то не понимает t."d"."H"."F"."att".
1 фев 12, 13:48    [12011256]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по XML-атрибуту  [new]
Alexander Konakov
Member

Откуда:
Сообщений: 1027
alx71
но что-то не понимает t."d"."H"."F"."att".

А кто-то обещал?
1 фев 12, 13:58    [12011400]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по XML-атрибуту  [new]
alx71
Member

Откуда:
Сообщений: 388
Example 4-24 XPath Re-write of an Index on a singleton Element or Attribute

CREATE INDEX iPURCHASEORDER_REJECTEDBY
ON PURCHASEORDER p
(p."XMLDATA"."REJECTION"."REJECTED_BY");
1 фев 12, 14:00    [12011429]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по XML-атрибуту  [new]
-2-
Member

Откуда:
Сообщений: 15330
alx71
Example 4-24
Предположу, что тип таблицы у них xml с зарегистрированной схемой. а у тебя таблица обычная.
и кстати, индес бывает еще indextype is xmlindex
1 фев 12, 14:05    [12011502]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по XML-атрибуту  [new]
alx71
Member

Откуда:
Сообщений: 388
-2-
alx71
Example 4-24
indextype is xmlindex


У меня 10g.
1 фев 12, 14:27    [12011780]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить