Не только неправильный запрос, но и неверное объявление строки. Вы не можете объявить строку таким способом.
1. Для простого решения, если мы можем предположить, что значения материалов являются уникальными от запятой до запятой, вы можете объявить строку как
v_material varchar2(18000) := ',2421032060SST,2421040080SST,2421050080SST,';
и при использовании в запросе
... and instr(','|| MARA.Materials ||',', v_material) > 0
2. Или, во-вторых, и это более правильно с моей точки зрения.
объявить тип таблицы уровня схемы строки
create or replace type TStrings as table of varchar2(150);
1010 * объявить *
v_materials TStrings := TStrings('2421032060SST','2421040080SST','2421050080SST');
, а затем использовать в запросе, как
... select column_value from table(v_material) ...
как то так.