Една от възможностите е да използвате Каскаден списък със стойности и задайте предишни елементи като „Родител(и)“. Заявката за всеки следващ елемент от списъка за избор ще премахне предварително избраните стойности, напр.
select subject_name d,
subject_id r
from subjects
where subject_id not in (:P1_FIRST_MAJOR, :P1_SECOND_MAJOR);
Защо обаче не използвате Shuttle вместо това? Да предложите всички предмети и да позволите на ученика да избере някой от тях, просто като ги премести от лявата към дясната страна на елемента совалка?