Я пытаюсь ускорить запрос, который использует Contains Near, с запросом, который использует regexp_like.Начальный запрос Contains Near занимает около 45 минут.Столбец Clob содержит большие «документы» и индексируется в домене.
Исходный запрос:
SELECT column1
FROM TEST
WHERE CONTAINS(column1,'{NEAR(quick,fox, lazy), 3, FALSE}')>0;
Предлагаемый запрос:
SELECT column1
FROM TEST
WHERE REGEXP_LIKE(column1, '(\b(quick|fox|lazy)(?:\W+\w+){1,6}?\W(quick|fox|lazy)(?:\W+\w+){1,}?\W(quick|fox|lazy)\b)','i')
Я получил исходный синтаксис регулярного выражения отсюда: https://www.regular -expressions.info / near.html .
Проблема: Я получаю код регулярного выражения для работы в html https://www.regextester.com,, но когдаЯ положил его в Oracle, он ничего не находит.Что не так с моим синтаксисом?Я не могу понять это.Оракул обрабатывает REGEXP по-другому?