есть таблица movies с полями:
id [INT]
name [string]
rating [float]
Будет производиться полнотекстовый поиск по полю name и сортироваться по полю rating. Все это достаточно легко реализовать, но проблема в другом: пользователи часто неверно вводят названия.
Вопрос: как можно реализовать поиск по синонимам? То есть сам пользователь ничего не подозревает, перед ним есть всего одно поле, в которое он вводит запрос, скажем "хобит", но в выпадающем окошке с подсказками должен появиться "хоббит".
Может в таблицу movies присобачить еще одно поле synonym, где через разделитель будут храниться заведомо ошибочные названия? И полнотекстовый поиск будет уже производиться по полям name и synonym?
Существуют ли более разумные схемы? (Отредактировано автором: 06 Января, 2015 - 02:22:07)
|