2010-11-29 3 views
3

Я хочу использовать таблицу чисел в качестве фильтра в операторе select.Использовать таблицу числа в качестве фильтра в том месте, где статья

Это таблица чисел:

CREATE OR REPLACE TYPE AUTOCONTROLE2.ListNumbers AS TABLE OF NUMBER(10) 

Это небольшой тест SQL:

declare 
testvar number; 
ActiviteitSAC autocontrole2.ListNumbers := autocontrole2.ListNumbers(189449, 189456, 189473); 
begin 
    select count(O.pap_id) into testvar 
    from pap_operator O 
    where O.PAP_OPERATOR_ID in (ActiviteitSAC(1), ActiviteitSAC(2), ActiviteitSAC(3)); 
end; 

Я хочу, чтобы заменить ActiviteitSAC (1), ActiviteitSAC (2), ActiviteitSAC (3) чем-то вроде «выберите * из ActiviteitSAC».

Любые идеи?

ответ

3
SELECT count(o.pap_id) 
    INTO testvar 
    FROM pap_operator o 
WHERE o.pap_operator_id IN (SELECT * FROM TABLE(ActiveiteitSAC)); 

должен это сделать.

Смежные вопросы