Будет ли использовать регулярное выражение подстановки в REGEXP_LIKE менее результативным, чем вообще не включать условие условия.Регулярные выражения Oracle с использованием подстановочных знаков
Например, я хочу, чтобы создать Oracle подготовили заявление, как показано ниже:
select * from table_name
where regexp_like(column1, ?)
and regexp_like(column2, ?)
and regexp_like(column3, ?)
and regexp_like(column4, ?)
Запрос не может понадобиться указать критерии для всех столбцов. Для тех столбцов без критериев мы можем использовать регулярное выражение подстановки * ИЛИ мы можем просто не включать условие из предложения where.
select * from table_name
where regexp_like(column1, 'h[i|ello]')
and regexp_like(column2, '.*')
and regexp_like(column3, '.*')
and regexp_like(column4, 'bye')
ИЛИ
select * from table_name
where regexp_like(column1, 'h[i|ello]')
and regexp_like(column4, 'bye')
бы с использованием подстановочных знаков в условиях REGEXP_LIKE быть менее производительным, чем просто не включая состояние вообще? Если да, то это будет значительная разница в производительности?
Основная проблема заключается в том, что вместо того, чтобы динамически создавать инструкцию sql в соответствии с указанными критериями, можно использовать один оператор sql.