Задать вопрос
vpuhoff
@vpuhoff
Программист в свободное от работы время

Как наиболее эффективно написать SQL запрос на поиск строк, которые содержат одно из списка значений (over 1500 разных)?

Суть в вопросе, есть некий список слов(идентификаторов) и over 100 млн строк в базе по полю без индекса, нужно выбрать те из них что содержат любое слово из списка. Слабо представляю, что такое вообще может быть оптимальным, поэтому вопрос скорее какой запрос позволит получить нужную информацию максимально быстро, насколько это вообще возможно.
  • Вопрос задан
  • 478 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Учебный центр IBS
    Транзакции и блокировки в Oracle Database
    1 неделя
    Далее
  • Stepik
    SQL для начинающих: с нуля до сертификата Oracle
    2 месяца
    Далее
  • SQL Online
    Курс продвинутого SQL
    3 недели
    Далее
Пригласить эксперта
Ответы на вопрос 1
terrier
@terrier
Так, возможно, следует создать соответствующий индекс для текстового поиска? Пример для одной из конкретных СУБД.
Если же враги запретили вам создавать индексы в базе, то быстрее всего было бы выгрузить значения в кэш - префиксное дерево в памяти и дальше запрашивать уже по нему
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы