Поисковая система с таблицей базы данных Oracle - PullRequest
0 голосов
/ 29 сентября 2019

Я работаю над реализацией следующих возможностей поиска с помощью базы данных oracle.

У меня есть одна таблица с 80+ столбцами, имеющая около 90 тыс. Записей.Возможно добавление 4к записей каждый год.В среднем от 500 до 1000 вставлять и обновлять в течение дня.

Существует более 15 основных полей, для которых пользователь может выполнить любой из следующих типов поиска.Пользователь может выбрать одно или все 15 основных полей, чтобы указать, какие все поля необходимо учитывать при поиске.

3 типа поиска:

  1. Введенное пользователем значение сравнивается сзначение столбца с помощью оператора =.Точный поиск с учетом регистра

  2. Введенное пользователем значение сначала уменьшается.Удалите все специальные символы из него.Поставьте это значение для сравнения.Подобный процесс, то есть удаление строчных букв и специальных символов, должен произойти сначала для значений столбцов, а затем использовать оператор = для сравнения предоставленных пользователем значений.Поиск без учета регистра и точного значения

  3. Удалите все пробелы, специальные символы из предоставленного пользователем значения, а также значение столбцов таблицы базы данных, а затем найдите предоставленное пользователем значение, используя вид поиска.

У меня периодически возникают проблемы с построением запросов и базовыми требованиями к индексу для более быстрого выполнения.Я также начал изучать возможности «полнотекстового поиска оракула (текст Oracle)».

Мой вопрос заключается в том, как лучше всего реализовать такую ​​возможность поиска.Есть ли способ, где я могу использовать полнотекстовый поиск оракула наряду с удалением специальных символов на уровне базы данных перед сравнением?

...