Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Полнотекстовый поиск? / 4 сообщений из 4, страница 1 из 1
11.10.2017, 12:01
    #39534543
manking
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полнотекстовый поиск?
1) Что нужно чтобы выполнить полнотекстовый поиск?
2) Какой тип данных, индексы?
3) Какой запрос чтобы отсортировать поиск по наиболее подходящему варианту(релевантности)?
4) Нужно ли выносить полнотекстовые поля в отдельную таблицу или всё равно и их можно оставлять в таблице с другими данными?
...
Рейтинг: 0 / 0
11.10.2017, 12:59
    #39534615
manking
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полнотекстовый поиск?
Я так понял, что чтобы создать индекс, поле должно иметь тип tsvector, а не text.
Получается я должен вручную создавать еще один столбец, и при каждом обновлении поля text затем и обновлять поле tsvector?
...
Рейтинг: 0 / 0
11.10.2017, 13:28
    #39534648
manking
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полнотекстовый поиск?
Пытаюсь создать индекс.

Код: sql
1.
CREATE INDEX IF NOT EXISTS searh_text ON directories USING gin(to_tsvector(data));



ОШИБКА: функции в индексном выражении должны быть помечены как IMMUTABLE
...
Рейтинг: 0 / 0
11.10.2017, 15:18
    #39534773
Rutra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полнотекстовый поиск?
Нужно указать конфигурацию. Без указания конфигурации используется STABLE функция to_tsvector(text). Вам нужна функция to_tsvector(regconfig,text).
Код: sql
1.
CREATE INDEX IF NOT EXISTS searh_text ON directories USING gin(to_tsvector('russian', data));
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Полнотекстовый поиск? / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]