Я наткнулся на код, подобный следующему в хранимой процедуре Oracle:
SELECT * FROM hr.employees WHERE REGEXP_LIKE(FIRST_NAME, '\A'||:iValue||'\Z', 'c');
И я не уверен, что делают \ A и \ Z.
Из того, что я могу почерпнуть из документации Oracle, я думаю, что они просто подавляют значение специальных символов в параметре iValue. Если это так, вышеуказанное должно быть эквивалентно
SELECT * FROM hr.employees WHERE FIRST_NAME=:iValue;
Кто-нибудь может это подтвердить? Эмпирически это похоже на случай.
Я думаю, что в прошлом они хотели поиск без учета регистра, поэтому «c» раньше был «i». Поэтому в этом случае нам больше не нужно использовать функцию REGEXP_LIKE, и мы можем заменить ее на равно.