Както вече беше коментирано, по-добре и по-лесно е просто да свържете няколко условия:
where departmentName like '%Medi%'
or departmentName like '%Ciga%'
or departmentName like '%Tabacc%';
Друг начин е да вмъкнете тези стойности „%Medi%“, „%Ciga%“ и „%Tabacc%“ в таблица с условия и след това да изпълните тази заявка:
select department.*
from department
cross join conditionTable
where department.departmentName like conditionTable.value;
Предполагам тук, че вашата таблица е department
и че таблицата с условия има колона value
. Ако внедрите това решение, трябва да се грижите за паралелността и да филтрирате conditionTable по нещо като
select department.*
from department
inner join conditionTable on conditionTable.session = yourSessionId
where department.departmentName like conditionTable.value;
И накрая, трето решение, което може да е удобно, ако не искате да използвате conditionTable, е да генерирате низ select <cond1> as value from dual union select <cond2> from dual...
и поставени в динамична заявка като
select department.*
from department
cross join
(select '%Medi%' as value from dual
union
select '%Ciga%' from dual
union
select '%Tabacc%' from dual) conditionTable
where department.departmentName like conditionTable.value;