Вы можете добавить индекс на (col1, col2, col3, col4, col5)
.Это можно использовать для всех запросов:
create index idx_t_5 on t(col1, col2, col3, col4, col5);
Если это невозможно, и столбцы имеют одинаковый тип, то вы можете использовать боковое соединение в Oracle 12c +, чтобы объединить это в один запрос:
select distinct which, col
from t cross apply
(select 'col1' as which, t.col1 as col from dual union all
select 'col2', t.col2 from dual where t.col2 = :bind2 union all
. . .
) t
where col1 = :bind1;
Это отсканирует таблицу только один раз, что приведет к повышению производительности.