Как использовать параметры в предложении «где значение в…»?
Это работает, когда у меня есть только один код состояния в качестве параметра.
Как я могу заставить код работать, когда у меня есть более одного state_code в parm_list?
Требования:
(1) Я не хочу жестко кодировать коды состояний в моем определении курсора
(2) Я хочу разрешить использование более чем одного кода состояния в моем предложении where
Например: я хочу запустить этот код дляparm_list = ('NY','NJ','NC'). I'm encountering difficulties in reconciling single quotes in parm_list with the single quotes in the 'where state_code in ' query.
set serveroutput on;
DECLARE
parm_list varchar2(40);
cursor get_state_codes(in_state_codes varchar2)
is
select state_name, state_code from states
where state_code in (in_state_codes);
BEGIN
parm_list := 'NY';
for get_record in get_state_codes(parm_list) loop
dbms_output.put_line(get_record.state_name || get_record.state_code);
end loop;
END;