Как вы ищете столбец базы данных, который позволяет разметку? - PullRequest
2 голосов
/ 10 апреля 2009

Текст может быть сохранен в базе данных, используя markdown, bbcode, html и т. Д. Должен ли я удалить любые разрешенные теги из условий поиска? Есть ли в вашем анализаторе разметки какой-либо метод для помощи в этой задаче?

Я собирался использовать как '% searchword%' запросов. Предоставляет ли полнотекстовый поиск какие-либо преимущества для такого простого текстового поиска?

Обновление: кажется, существует множество способов сделать это. Я проясню ситуацию немного больше. Он предназначен для веб-сайта публикации вакансий компании, для поиска открыто около 5 или 7 столбцов varchar (4 из которых позволяют разметку), примерно 150 активных объявлений о вакансиях в любой момент времени.

Ответы [ 3 ]

3 голосов
/ 10 апреля 2009

Если у вас есть какой-либо тип разметки (например, HTML) в вашем тексте, вы не сможете получить высокую лингвистическую точность при индексации и поиске. В этом случае у вас есть два варианта: предпочтительный метод - просто сохранить текстовые данные в столбце varbinary (max) и указать тип документа, чтобы их можно было отфильтровать. Если это не вариант, вы можете рассмотреть возможность использования нейтрального средства разбиения по словам и, если возможно, добавления данных разметки (например, «br» в HTML) в свои списки шумовых слов.

См. Также :

Альтернативы

2 голосов
/ 10 апреля 2009

Я бы использовал какой-нибудь внешний инструмент полнотекстового поиска - например, Lucene.

1 голос
/ 10 апреля 2009

Я бы сохранял чередующуюся версию этого поля в отдельном поле и использовал бы полнотекстовый поиск по индексу. Поле будет удалено до последней версии с использованием триггеров

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...