Я использовал VARRAY хранить мой максимум двух мобильных номеров в моей клиентской таблице:SQL-запрос для извлечения данных из VARRAY
create or replace type mobile_array as varray(2) of
varchar2(11);
Im пытается произвести запрос, который фильтрует мобильные номера, начинающиеся с '0770'. Поскольку я использовал varray, я не уверен, как я подхожу к запросу, чтобы принять varray, поскольку он содержит данные, которые я хочу запросить. Я попытался это сделать, но я, кажется, не добился большого прогресса.
select c.custname.firstname,c.custmobile.mobile_array
from customer c
where c.custmobile.mobile_array like '0770%';
Любое руководство или помощь будут оценены.
Я не знаком с временными таблицами или представлениями, есть ли способ создать запрос, сохраняющий разброс? Или я слишком усложняю это? – user3487430
Да, есть, но вы решили добавить поля в таблицу вместо использования varray ?. Попробуйте это >> SELECT t1.custname, t2.column_value FROM custmobile t1, ТАБЛИЦА (t1.custmobile) t2 ГДЕ t2.custmobile like '0770%'; [Источник] (http://www.orafaq.com/wiki/VARRAY) – CAPD
Его проект, который требует, чтобы я использовал как можно больше объектно-реляционных функций, поэтому я пытаюсь сохранить varray и создать запрос с помощью текущий дизайн таблицы, так как я не хочу его деконструкцию в настоящее время. – user3487430