2015-02-02 3 views
0

У меня есть база данных с тысячами записей. Каждая запись имеет поле с именем «_Text», которое содержит HTML-код, полученный с веб-страницы.Поиск быстрого выбора в поле varchar

Тип поля nvarchar (max).

Моя проблема заключается в поиске слова в этой таблице с использованием «Like», на которое требуется много времени, потому что в поле есть множество слов.

Как быстро выполнить поиск в поле «_text»?

+0

Проверьте, поддерживает ли ваша РСУБД какой-либо [полнотекстовый поиск] (http://en.wikipedia.org/wiki/Full_text_search). Если этого не произошло, вам может понадобиться создать собственный индекс отдельных слов из записей в таблице, чтобы оптимизировать поиск по одному слову. – JimmyB

ответ

0

Тысячи записей не очень-то похожи. Идеи:

  1. Вы можете создать индекс для поля, где вы собираетесь сделать результаты поиска

  2. Вы можете использовать полнотекстовый поиск особенности

  3. Вы можете использовать инструменты, как Nginx или elasticsearch

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

  5. Посмотрите на запрос, который вы создаете. Это оптимально?

+0

Я не использую sqlserver, следовательно, я должен сделать это с помощью кода или проектирования таблицы. – Hossis

+0

Можете ли вы помочь мне с более подробным объяснением или образцом? – Hossis

+0

На самом деле вы не дали нам никаких подробностей, вы только что описали суть проблемы. Я ответил сущностью решения. Однако, выполнив поиск в google, вы сможете решить эту проблему. –

Смежные вопросы